You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2019/01/26 14:11:13 UTC

svn commit: r1852232 - /pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java

Author: tilman
Date: Sat Jan 26 14:11:13 2019
New Revision: 1852232

URL: http://svn.apache.org/viewvc?rev=1852232&view=rev
Log:
PDFBOX-4435: revert back to use PDFPageable only (reason see comment), but pass renderingHints

Modified:
    pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java

Modified: pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java?rev=1852232&r1=1852231&r2=1852232&view=diff
==============================================================================
--- pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java (original)
+++ pdfbox/branches/2.0/tools/src/main/java/org/apache/pdfbox/tools/PrintPDF.java Sat Jan 26 14:11:13 2019
@@ -171,10 +171,14 @@ public final class PrintPDF
                     }
                 }
             }
-            printJob.setPageable(new PDFPageable(document, orientation, showPageBorder, dpi));
-            PDFPrintable printable = new PDFPrintable(document, Scaling.ACTUAL_SIZE, showPageBorder, dpi);
-            printable.setRenderingHints(renderingHints);
-            printJob.setPrintable(printable);
+            PDFPageable pageable = new PDFPageable(document, orientation, showPageBorder, dpi);
+            pageable.setRenderingHints(renderingHints);
+            printJob.setPageable(pageable);
+
+            // We're not using PDFPrintable, because then
+            // "the PageFormat for each page is the default page format"
+            // which results in the image appearing in the middle of the page, and padded
+            // when printing on XPS. Also PDFPageable.getPageFormat() won't be called.
 
             if (silentPrint || printJob.printDialog())
             {