Hi.
yeah.
here it is

    public static void pdf(File  s, String ss) throws 
FileNotFoundException, DocumentException
    {
            // Load the ODS file
     OpenDocument doc = new OpenDocument(); 
     doc.loadFrom(s);
        
     // Open the PDF document
     Document document = new Document(PageSize.A4);
     File outFile = new File(ss);
     
     PdfDocument pdf = new PdfDocument();
     document.addDocListener(pdf);
     
     FileOutputStream fileOutputStream = new FileOutputStream(outFile);
     PdfWriter writer = PdfWriter.getInstance(pdf, fileOutputStream);
     pdf.addWriter(writer);

     document.open();

     // Create a template and a Graphics2D object 
     Rectangle pageSize = document.getPageSize();
     int w = (int) (pageSize.getWidth() * 0.9);
     int h = (int) (pageSize.getHeight() * 0.95);
     PdfContentByte cb = writer.getDirectContent();
     PdfTemplate tp = cb.createTemplate(w, h);

     Graphics2D g2 = tp.createPrinterGraphics(w, h, null);
     // If you want to prevent copy/paste, you can use
     // g2 = tp.createGraphicsShapes(w, h, true, 0.9f);

     tp.setWidth(w);
     tp.setHeight(h);

     // Configure the renderer
     ODTRenderer renderer = new ODTRenderer(doc);
     renderer.setIgnoreMargins(true);
     renderer.setPaintMaxResolution(true);

     // Scale the renderer to fit width
     renderer.setResizeFactor(renderer.getPrintWidth() / w);
     // Render
     renderer.paintComponent(g2);
     g2.dispose();

     // Add our spreadsheet in the middle of the page
     float offsetX = (pageSize.getWidth() - w) / 2;
     float offsetY = (pageSize.getHeight() - h) / 2 ;
     
     cb.addTemplate(tp, offsetX, offsetY);
     // Close the PDF documen
     document.close();
    }

and this is the output
StylePageLayoutProperties: Assuming Page Format A4: Width:  21.0cm
StylePageLayoutProperties: Assuming Page Format A4: Height: 29.7cm
PageHeigth:863600




On Thursday, February 14, 2019 at 5:18:30 PM UTC-3, guillaume...@gmail.com 
wrote:
>
> Hi,
>
> Can you share the code you are using to "print" it?
>
> Regards,
>
> Le jeu. 14 févr. 2019 à 20:15, <grazi...@gmail.com <javascript:>> a 
> écrit :
>
>>
>> this is the layout that i'm trying to use 
>>
>> On Thursday, February 14, 2019 at 4:13:21 PM UTC-3, grazi...@gmail.com 
>> wrote:
>>>
>>> hi, i defined the print range in openoffice, its like before, it only 
>>> prints the first page.
>>> i know that the data is there, the size of the pdf varies if i try to 
>>> print a larger or smaller document, but still it only prints the first page.
>>> it "prints" a second page, but is allways blank.
>>> i tried to play with the page size but the program (i think that itext) 
>>> throws this line 
>>> "StylePageLayoutProperties: Assuming Page Format A4: Width:  21.0cm"
>>>
>>>
>>> On Tuesday, February 12, 2019 at 10:44:00 AM UTC-3, 
>>> guillaume...@gmail.com wrote:
>>>>
>>>> Hi,
>>>>
>>>> I think that your print range is not defined in your ODS.
>>>>
>>>> Cordialement,
>>>>
>>>> Le mar. 12 févr. 2019 à 14:42, <grazi...@gmail.com> a écrit :
>>>>
>>>>> hi.
>>>>> i followed every instruction on the tutorial (using a old version of 
>>>>> itext ) but i can't manage to print more than one page.
>>>>> i tried changing the first page size, but it didn't work.
>>>>>
>>>>> i dont know what im doing wrong.
>>>>> how do you print more than one page?
>>>>> can you print more than one page?
>>>>>
>>>>> -- 
>>>>>
>>>>> --- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "jOpenDocument" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to jopendocumen...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "jOpenDocument" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to jopendocumen...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"jOpenDocument" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jopendocument+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to