Please forgive me for bumping an old thread, but has anyone tried 2.0.0 with custom margins when using a non-zero density?
With density zero, we get desired results, but if we specify the DPI (force rasterization), we get some strange margins on the right and on the bottom.... Preview: https://cloud.githubusercontent.com/assets/6345473/14086343/a7a0e92c-f4f2-11e5-86ea-deca6e27a7ac.png We've upgraded from RC3 to 2.0.0 stable with the same results. -Tres - [email protected] On Mon, Jun 29, 2015 at 12:23 AM, John Hewson <[email protected]> wrote: > > > On 28 Jun 2015, at 11:04, Alex Sviridov <[email protected]> wrote: > > > > Uff! I have finally made it to work. The following code prints with > normal margins: > > > > PrinterJob job = PrinterJob.getPrinterJob(); > > Paper paper=new Paper(); > > paper.setSize(72d*8.267d, 72d*11.692d); > > paper.setImageableArea(0,0,72d*8.267d, 72d*11.692d); > > > > PrintRequestAttributeSet attr_set = new > HashPrintRequestAttributeSet(); > > attr_set.add(MediaSizeName.ISO_A4); > > attr_set.add(Sides.ONE_SIDED); > > > > PDFPrinter pDFPrinter=new > PDFPrinter(document,Scaling.SCALE_TO_FIT, Orientation.PORTRAIT,paper); > > pDFPrinter.silentPrint(attr_set); > > This makes sense, I think, because Java reports the size of the paper with > a margin already > applied (known as the “imageable area”). PDFBox will scale the document to > fit within *that*, > not within the paper. Setting the paper size doesn’t make much sense > though - because > PrinterJob.getPrinterJob() reports the size of paper which is currently > in the printer, and > obviously you can’t change that! So that bit looks wrong still to me. > Perhaps your default paper > is US letter or something and so by setting it to A4 you get the full > imageable area to play with > and then the printer just crops the result? You might loose content at the > edges of some PDFs > that way. > > Is your PDF actually A4, by the way, or are you trying to scale down > another size onto A4? > (In which case you’ll need to do either do some scaling or crop some > (hopefully whitespace) > content). > > Either way, paper.setSize(…) to anything other than the size of paper in > your printer isn’t right > and setImageableArea(…) to a size beyond your printer’s maximum margins > isn’t either… so > your code might work in this case, but it’s not really the answer in > general. > > Have you tried using Scaling.ACTUAL_SIZE? > > — John > > > > > Воскресенье, 28 июня 2015, 19:40 +02:00 от Tilman Hausherr < > [email protected]>: > >> Thanks, I have opened an issue in JIRA. I can confirm it, and it is only > >> in 2.0, not on 1.8 (which doesn't help, because 1.8 doesn't render your > >> fonts properly) > >> > >> https://issues.apache.org/jira/browse/PDFBOX-2844 > >> > >> Tilman > >> > >> Am 28.06.2015 um 18:01 schrieb Alex Sviridov: > >>> The file I tested is here https://yadi.sk/i/iX-KJwlhhXMY2 > >>> > >>> I printed this pdf file with Adobe Reader in mode 100%. And as > expected left and right margins are about 2cm. In comparison when I print > using pdfbox left margin is 4.5cm, right about 3.5cm. > >>> > >>> The code I use : > >>> PrinterJob job = PrinterJob.getPrinterJob(); > >>> Paper paper=new Paper(); > >>> paper.setSize(72d*8.267d, 72d*11.692); > >>> PDFPrinter pDFPrinter=new PDFPrinter(document,Scaling.SCALE_TO_FIT, > Orientation.PORTRAIT,paper); > >>> pDFPrinter.silentPrint(job); > >>> > >>> Questions: > >>> 1) how can I make pdfbox to SCALE_TO_FIT? > >>> 2) how can I print only certain page - not entire document? > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> Воскресенье, 28 июня 2015, 17:40 +02:00 от Tilman Hausherr < > [email protected] >: > >>>> Hi, > >>>> > >>>> Something is indeed a bit tricky with your mailing software, your own > >>>> comments are mixed with my comments. But I think I got them. Sorry for > >>>> my "What else would you expect" comment, that was a failed attempt of > >>>> being funny. > >>>> > >>>> I don't have LibreOffice installed, I don't know if the others do. So > >>>> the best would be that you create a PDF where the borders are obvious, > >>>> and upload it somewhere. > >>>> > >>>> Tilman > >>>> > >>>> > >>>> > >>>> Am 28.06.2015 um 17:33 schrieb Александр Свиридов: > >>>>> Воскресенье, 28 июня 2015, 17:10 +02:00 от Tilman Hausherr < > [email protected] >: > >>>>>> Am 28.06.2015 um 16:43 schrieb Александр Свиридов: > >>>>>>> When I print pdf document it doesn't stretch to take normal A4 > page area. I mean that margins are too big and document is smaller then it > could be and is located in center of the page. > >>>>>> Yes it is centered. What else would you expect? Adjusted to the > bottom > >>>>>> right? I don't understand you. Really. Of course I expect it to be > centered. And it is centered as it's expected. However, If everything were > as expected I wouldn't right to mailing list, would I? > >>>>> I always thought that information for fixing some bug is a starting > point. That's why I provided this information. > >>>>>> We'd need the PDF to find out what (if anything) is wrong I do all > files using Libre Office. I tried different files and even very simple > ones. So just take any file and you must get the same results. > >>>>>> > >>>>>> > >>>>>> Please try also printing it with Adobe Reader in 100% mode. I > printed my pdf file with Adobe Reader in mode 100%. And as expected left > and right margins are about 2cm. In comparison when I print using pdfbox > left margin is 4.5cm, right about 3.5cm. > >>>>>> > >>>>>> Tilman > >>>>>> > >>>>>> PS: don't CC user postings to me. I get then anyway. Really sorry > for this. I can't understand why my mailing service added your address and > I didn't notice it. > >>>>> So the problem is still there. How to fix it? > >>>>>>> My code: > >>>>>>> PrinterJob job = PrinterJob.getPrinterJob(); > >>>>>>> Paper paper=new Paper(); > >>>>>>> paper.setSize(72d*8.267d, 72d*11.692); > >>>>>>> PDFPrinter pDFPrinter=new > PDFPrinter(document,Scaling.SCALE_TO_FIT, Orientation.PORTRAIT,paper); > >>>>>>> pDFPrinter.silentPrint(job); > >>>>>>> > >>>>>>> Please help me to solve this problem. > >>>>>>> > >>>>>> > --------------------------------------------------------------------- > >>>>>> To unsubscribe, e-mail: [email protected] > >>>>>> For additional commands, e-mail: [email protected] > >>>>>> > >>>> > >>>> --------------------------------------------------------------------- > >>>> To unsubscribe, e-mail: [email protected] > >>>> For additional commands, e-mail: [email protected] > >>>> > >>> > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [email protected] > >> For additional commands, e-mail: [email protected] > >> > > > > > > -- > > Alex Sviridov > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >

