2013-06-27 27 views
3

我在打印橫向文檔(doc.width > doc.height)時遇到問題。我沒有肖像問題。我正在使用PDFBox 1.8.2庫。即使我手動設置橫向模式(如this blog),它也可以縱向打印文檔。關於PDFBox項目中的這個問題有幾個closed JIRA bugs。如何打印風景?爲什麼PDFBox不使用橫向打印文檔?

注意:我添加了額外的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(); 
} 
+0

請張貼您的打印嘗試周圍的代碼以及您正在使用的PDFBox和JRE版本。 – JoshDM

+0

試試未發佈的2.0版本,我們最近解決了幾個橫向打印問題。 –

回答

1

這個例子在grepcode.com爲我工作。總而言之,它首先將一個縱向頁面旋轉90度以獲取橫向,然後使用concatenate2CTM方法來類似地旋轉您的contentStream。

+0

歡迎來到Stack Overflow!雖然這個鏈接可能回答這個問題,但最好在這裏包含答案的重要部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。請參閱[我如何寫出一個好答案](http://stackoverflow.com/help/how-to-answer)。 – ByteHamster