如何测试用PDFbox生成的PDF

How to test PDF generated with PDFbox

我写了一个 class 读取 pdf 模板并添加了一些行,例如:

List<PdfTextLine> textLines = pdfBankActPage.getTextLines();
    if (textLines != null) {
        for (PdfTextLine textLine : textLines) {
            contentStream.setFont(cyrillicFont, textLine.getFontSize());
            contentStream.beginText();
            contentStream.newLineAtOffset(textLine.getOffsetX(), textLine.getOffsetY());
                        contentStream.showText(textLine.getText());
            contentStream.endText();
        }
    }

我的 util class 存储一行信息:

public class PdfTextLine {

    private Integer offsetX;
    private Integer offsetY;
    private String text;
    private Integer fontSize;

常见的测试方法是什么,生成的 PDF 是否正确?

由于你的问题不够详细,所以很难回答。 有多种方法可以验证您的内容是否已添加:

  1. 从 PDF 中提取文本并检查您的文本是否在其中

    PDFTextStripper stripper = new PDFTextStripper();
    stripper.setStartPage(pageNumber);
    stripper.setEndPage(pageNumber);
    stripper.setAddMoreFormatting(false);
    String text = stripper.getText(this.document);
    
  2. 使用像 pdfcompare 这样的库(它本身使用 Pdfbox)来直观地比较 pdf...