【java – PDFBox 2.0 RC3 – 查找和替换文本】教程文章相关的互联网学习教程文章

java – 使用PDFBox获取文本颜色【代码】

我刚开始使用PDFBox,提取文本等等.我感兴趣的一件事是我正在提取的文本本身的颜色.但是我似乎找不到任何获取这些信息的方法. 是否有可能使用PDFBox来获取文档的颜色信息,如果是这样,我将如何去做? 非常感谢.解决方法:所有颜色信息都应存储在PDGraphicsState类中,使用的颜色(描边/非描边等)取决于使用的文本呈现模式(通过pdfbox邮件列表). 这是我尝试的一个小样本: 在创建仅包含一行的pdf(“Sample”以RGB = [146,208,80]编写)后,...

java – PDFBox – 打开并保存已签名的pdf会使我的签名无效【代码】

我正在努力学习使用Apache的pdfBox来处理数字签名文档的工作.在测试期间,我创建了一个完全空的pdf文档. 然后我使用带证书功能的签名通过Adobe Reader签署了该文档. 我尝试使用pdfBox打开,保存和关闭已签名的文件,而不进行任何修改.但是,一旦我在Adobe中打开文件,文件就不再有效. Adobe告诉我:“此签名中包含的格式或信息存在错误(支持信息:SigDict / Contents非法数据)” 由于我没有修改文件的内容,直观上应该没有任何问题,签名应...

java – Radiobutton显示PDFBox的问题【代码】

我使用了这个问题的答案中的代码来创建我的radiobuttons:How to Create a Radio Button Group with PDFBox 2.0 在我创建PDF并尝试从中读取(以编程方式)选择的值后,此代码工作正常:PDDocumentCatalog catalog = doc.getDocumentCatalog();PDAcroForm form = catalog.getAcroForm();List<PDField> fields = form.getFields();for(PDField field: fields) {Object value = field.getValueAsString();String name = field.getFullyQu...

java – PDFBox API:如何更改字体以处理AcroForm字段中的西里尔文值【代码】

我需要帮助使用PDFBox API将Cyrillic值添加到字段中.这是我到目前为止:PDDocument document = PDDocument.load(file); PDDocumentCatalog dc = document.getDocumentCatalog(); PDAcroForm acroForm = dc.getAcroForm(); PDField naziv = acroForm.getField("naziv"); naziv.setValue("Наслов"); // this part right here naziv.setValue("Naslov"); // it works like this当我的输入是拉丁字母时,它完美的工作.但我也需要处...

java – 是否可以在PDFBOX中对齐文本?【代码】

PDFBOX API中是否有任何函数可以使文本合理,或者我们必须手动执行?如果手动然后如何使用java(其背后的逻辑)证明文本解决方法:This older answer显示了如何将字符串分解为适合给定宽度的子字符串.要制作示例代码,请以填充整个行宽的方式绘制子字符串,替换如下(取决于PDFBox版本): PDFBox 1.8.x 替换最后一个循环for (String line: lines) {contentStream.drawString(line);contentStream.moveTextPositionByAmount(0, -leading); ...

java – 使用PDFBox将UTF-8编码的字符串写入PDF [复制]【代码】

参见英文答案 > Apache PDFBox: Can I set font other than those present in PDType1Font 1个我无法使用PDFBox将unicode字符写入PDF.下面是一些生成垃圾字符而不是输出“?”的示例代码.我可以添加什么来获得对UTF-8字符串的支持?PDDocument document = new PDDocument(); PDPage page = new PDPage(); document.addPage(page); PDPageContentStream contentStream = new PDPageContentStream...

java – 使用Apache PDFBox生成unicode pdf【代码】

我必须在我的spring mvc应用程序中生成pdf.最近我测试了iTextPdf library,但我无法生成unicode pdf文档.实际上我没有在生成的文档中看到非拉丁字符.我决定使用Apache PDFBox作为我的目的,但我不知道它是否支持unicode字符?如果有,是否有任何学习pdfBox的好教程?如果没有,我应该使用哪个库?提前致谢.解决方法:1.8.*版本不支持使用Unicode生成PDF,但2.0.*版本支持.这是EmbeddedFonts.java的示例:public class EmbeddedFonts {pub...

java – PDFBox 2.0 RC3 – 查找和替换文本【代码】

如何使用PDFBox 2.0查找和替换PDF文档中的文本,他们提取旧的示例,它的语法不再有效,所以我想知道它是否仍然可行,如果是这样,最好的方法是什么.谢谢!解决方法:你可以尝试这样:public static PDDocument replaceText(PDDocument document, String searchString, String replacement) throws IOException {if (Strings.isEmpty(searchString) || Strings.isEmpty(replacement)) {return document;}PDPageTree pages = document.getD...

java – 性能iText vs.PdfBox【代码】

我正在尝试将pdf(我最喜欢的书籍Effective Java,如果它的问题)转换为文本,我检查了iText和Apache PdfBox.我发现性能有很大的不同:使用iText需要2:521,使用PdfBox:6:117.如果我的代码为PdfBOxPDFTextStripper stripper = new PDFTextStripper(); BUFFER.append(stripper.getText(PDDocument.load(pdf)));这是针对iText的PdfReader reader = new PdfReader(pdf); for (int i = 1; i <= reader.getNumberOfPages(); i++) {BUFFER....

java – PDFBox是一半可用【代码】

我从Apache下载了PDFBox 1.8.6 然后我将其复制到我在Java / Eclipse项目根目录下创建的’res’文件夹中.然后我右键单击该项目,转到属性,然后转到Java Build Path,然后在Libraries中,然后我单击Add JARS …并添加它和它的文档. 从那时起,在我的代码中,我可以导入(ish)PDFBox. 例如,我可以看到:import org.apache.pdfbox.pdmodel.*;但是,如果你想做一些有用的事情,你需要导入更多,通常是以下形式:import org.apache.pdfbox.pdmodel...

java – PDFBox U 00A0在此字体的编码中不可用【代码】

我在调用PDField的setValue方法并尝试设置包含特殊字符的值时遇到问题.field.setValue("TEST-BY ?(TEST)")详细地说,如果我的值包含字符为U 00A0,则会出现以下异常:Caused by: java.lang.IllegalArgumentException: U+00A0 is notavailable in this font’s encoding: WinAnsiEncoding完整的stracktrace可以在这里找到:Stacktrace 我目前已将PDType1Font.TIMES_ROMAN设置为字体.为了解决这个问题,我尝试了其他可用的字体.同样的问...

java – 使用pdfbox从PDF文件中提取文本【代码】

我试图使用pdfbox从PDF文件中提取文本,但不是作为命令行工具,而是在我的Java应用程序中.我正在使用jsoup下载pdf.res = Jsoup .connect(host+action) .ignoreContentType(true) .data(data) .cookies(cookies) .method(Method.POST) .timeout(20*1000) .execute();// prepare document InputStream is = new ByteArrayInputStream(res.bodyAsBytes()); PDDocument pdf = new PDDocument(); pdf.load(is,true);// extract text PDFT...

java – 如何使用PDFBox API从PDF获取文本的方向

我有PDF文件,其文本有四个不同的方向,如水平对齐,垂直对齐和反向对齐.使用PDFBox API从pdf中读取文本时,我获得了水平对齐文本的良好输出,但在其他情况下却没有.例如,如果“斜体”字水平对齐,则输出为“斜体”.如果它是垂直对齐的,那么输出就会在行之间分割为“它 一个 里 c“(这里”它“,”a“,”li“,”c“在不同的行中).我想知道即使对于垂直和反向对齐的文本,是否有任何方法可以获得良好的外观.解决方法:您可以覆盖PDFTextStrip...

java – 使用PDFBox 2.X在所有页面上特定位置的所有页面上叠加PDF图章【代码】

我正试图在每页左上角的PDF中覆盖所有页面顶部的图章(PDF).将被“盖章”的PDF具有不同的尺寸. PDF标记是一个常量大小,小于PDF的所有页面. 我似乎只能让PDFBox将标记放在PDF的中间. 我已经尝试了很多我不会在这里列出的东西.我宁愿不将PDF标记转换为位图(PDImageXObject)并将其插入到页面上.这是我正在玩的一些粗略的代码: – public static void main(String[] args) throws Exception {String stampPath = "C:\\pdf2\\NuStamp.pd...

java – PDFBox LayerUtility – 将图层导入现有PDF【代码】

我使用pdfbox来操纵PDF内容.我有一个很大的PDF文件(比如500页).我还有一些其他单页PDF文件只包含一个图像,最大每个文件大约8-15kb.我需要做的是将这些单页pdf导入到大PDF文件的某些页面上. 我已经尝试了pdfbox的LayerUtility,但我创建了一个非常大的文件作为输出.在处理之前,源pdf大约是1MB,当添加较小的pdf文件时,大小达到64MB.有时我需要将两个较小的PDF包含在较大的PDF中. 有没有更好的方法来做到这一点,还是我只是做错了?在下...

替换 - 相关标签