我很好奇是否有人有为Java(尤其是iText)生成的PDF编写JUnit的经验。我在谷歌上进行了快速搜索,但找不到任何具体内容。到目前为止,我能做的是检查PDF是否已生成、有一定数量的页面并且文档已关闭。但我无法核实文件的内容。有人可以举例说明他们过去为达到这样的结果所做的事情吗?还是我完全错了,我的PDF的JUnit太过分了?谢谢 最佳答案 鉴于您使用的是Java,我会查看PDFBox(Apache)。您的要求非常具有挑战性,因为您重新转换的PDF在语法上可能与您的原始文件不同。您可能需要考虑往返。PDF等文档在比较方面可能很脆
我愿意将xhtml文件转换为pdf/a格式或将pdf文件转换为pdf/a格式。任何人都可以建议我可以使用哪个java库。谢谢我会让我的例子更具体我有一个简单的html文件xyz.htmlhellohellojava代码:Documentdocument=newDocument(PageSize.A4);FileOutputStreamfout=newFileOutputStream(pdffile);PdfWriterpdfWriter=PdfWriter.getInstance(document,fout);pdfWriter.setPDFXConformance(PdfWriter
我有一个pdf文件,其中包含utf-8字符(İ、ğ、ı和阿拉伯字母等)。如何解析这个文件?我使用itext和pdfBox,但我看到“çekti¤ik夛da”而不是“çektiğikağıda”。我该如何解决这个问题? 最佳答案 由于尚未提供示例,我自己创建了阿拉伯语测试数据(好吧,实际上我从itext-questions邮件列表上的一些帖子中借用了用于创建测试数据的代码)和一个解析这些数据的测试:packageitext.parsing;importjava.io.File;importjava.io.FileOutputStr
我有一个包含5列的Excel文件,其中包含很少的合并单元格、空白单元格、日期和其他文本信息(一个普通的Excel文件)。我正在使用Java中的POIAPI读取此文件。我可以使用iTextjar将文件转换为pdf表。但是,整个格式并没有复制到pdf中。(例如,合并的单元格变成一列,其他格式或设置都消失了)。创建了一个简单的pdf表格。如何保留与Excel中相同的格式?(我想要pdf格式的excel表的精确副本)这是我使用的代码//FirstwereadtheExcelfileinbinaryformatintoFileInputStreamFileInputStreaminput_doc
我需要在java中(使用itext)创建以下xmp元数据并将其放入我的一个pdf中。ABIAssegniSchemahttp://abi.it/std/cheque/xmlnsassegniIDDocumentoTextexternalIdentificativounivocodeldocumentodatachiusuraDateexternalDataeoradellaproduzionedelfileoggettodocumentoTextexternalOggettodeldocumentosoggettoproduttoresoggettoexternalSoggettopr
是否可以使用PDFBox创建带标签的PDF(PDF/UA)?PDFBox似乎有一个API(包org.apache.pdfbox.pdmodel.documentinterchange.taggedpdf),但我找不到任何教程或代码示例。使用下面的代码,我生成了一个包含图像的PDF文件,屏幕阅读器NVDA(在我的例子中)识别它并读取“...图形替代描述”。但是,可访问性检查器PAC2显示错误:“图像对象未标记”。PDDocumentdoc=newPDDocument();PDPagepage=newPDPage();doc.addPage(page);PDDocumentCatalogd
我正在使用iText(5.5.13)库读取.PDF并替换文件中的模式。问题在于未找到该模式,因为在库读取pdf时不知何故出现了一些奇怪的字符。例如,在句子中:"Thisisatestinordertoseeifthe"当我试图阅读它时变成了这个:[(Thisisa)9(te)-3(st)9(ino)-4(rd)15(er)-2(t)9(o)-5(s)8(ee)7(ift)-3(h)3(e)]因此,如果我尝试查找并替换"test",则不会在pdf中找到"test"单词,并且不会被替换这是我使用的代码:publicvoidprocessPDF(Stringsrc,Stringdest){t
我正在尝试使用Flying-Saucer将HTML页面呈现为PDF。HTML在内存中创建并作为传递给渲染器renderer.setDocumentFromString(newString(htmlByteArray));问题是我有在HTML中,它不会在最终的HTML中呈现。图片位于resources包中的文件夹。我尝试使用以下设置基本url,但没有成功:ITextRendererrenderer=newITextRenderer();renderer.getSharedContext().setBaseURL("com/org/tools/designer/resources/");S
我在带有ProccessBuilder和Process的Java项目中使用wkhtmltopdf:ProcessBuilderpb=newProcessBuilder("wkhtmltopdf.exe","input.html","output.pdf");进程process=pb.start();此解决方案使用html文件作为输入,并将输出保存为磁盘上的pdf文件。但是我的html不是文件,它是一个OutputStream,我想即时创建pdf文件,不想将它保存在磁盘上。有没有办法用OutputStream传递参数并作为另一个OutputStream获取结果?
我正在使用ApachePDFBox(http://pdfbox.apache.org/)从任意数量的文件(包括图像和其他PDF)中创建PDF。现在我需要将MSOffice文档(Word、Excel和OutlookMSG)添加到PDF。文件可以有几乎所有的Office版本,所以不能认定文件是新的office文件(如docx)或旧文件(如doc)。有没有办法只使用免费工具来做到这一点?我的第一个想法是使用ApachePOI(http://poi.apache.org/)读取每个文件的内容并将文件重新创建为一个新的PDF页面,但这可能会变得非常昂贵,因为这个PDF创建在服务器上被超过五十人使