为什么PDFBox不使用横向打印文档?

时间:2013-06-27 09:37:21

标签: java printing pdfbox jpedal

我在打印横向文档(doc.width > doc.height)时遇到问题。我对肖像没有问题。我正在使用PDFBox 1.8.2库。即使我像this blog一样手动设置横向模式,它也会以纵向打印文档。 PDFBox项目中有几个关于此问题的closed JIRA bugs。如何打印横向?

注意:我添加了额外的PDF库标记来标记这些库的用户,以查看这些库中是否存在此问题。

博客文章中的代码:

Version : PdfBox-1.7.1 

PDDocument doc = PDDocument.load(psStream,true);

if (printService != null) {             

    PrinterJob pj =  PrinterJob.getPrinterJob();
    pj.defaultPage();
    pj.setCopies(Integer.parseInt(finalnumberOfCopies));
    pj.setPrintService(printService);
    pj.setPageable(new MyPDPageable(doc,pj));

    // don't use doc.silentPrint(pj) but pj.print() ...
    pj.print();
}

1 个答案:

答案 0 :(得分:1)

grepcode.com的这个例子对我有用。总而言之,它首先将纵向页面旋转90度以获得横向方向,然后使用concatenate2CTM方法来类似地旋转contentStream。