You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@pdfbox.apache.org by Tilman Hausherr <TH...@t-online.de> on 2020/12/01 07:03:24 UTC

Re: How to define page size for dynamic pages

Hi,

The table stuff is outside of PDFBox. You need to discuss this with the 
boxable folks.

Tilman

Am 30.11.2020 um 13:13 schrieb shankar S:
> In first page, created a simple table to write the dynamic content . Here I don't have control when to create new page and how many pages required to write the remaining contents.
> Right now dynamic page creation is working fine, only the problem  I'm facing is margin issue.  From second page onwards Top and bottom having more space(means not A4 size).
>
>
> On 2020/11/27 19:02:43, Tilman Hausherr <TH...@t-online.de> wrote:
>> You're only creating a page once "new PDPage(PDRectangle.A4)". If other
>> pages are created, then it's done outside of this code.
>>
>> Tilman
>>
>> Am 26.11.2020 um 07:11 schrieb Ambashankar Shirahatti:
>>> Hi,
>>>
>>>     Using below code to generate pdf files. Here first page is generating with proper A4 size, from second page onwards top and bottom margin is more(Not A4 size). How to solve this.
>>>
>>> public class PdfBoxSample01{
>>>                  
>>>       public static void main(String[] args) throws IOException {
>>>           PDDocument document = new PDDocument();
>>>           PDPage pdPag = new PDPage(PDRectangle.A4);
>>>           document.addPage(pdPag);
>>>           try {
>>>               PDPageContentStream contentStream = new PDPageContentStream(document, pdPag, true,
>>>            true);
>>>               BaseTable parentTable = createParentTable(document, pdPag);
>>>              // Add Table records here
>>>                ......
>>>      }
>>>
>>>       private static BaseTable createParentTable(PDDocument document, PDPage page) {
>>>                 float yCordinate = page.getCropBox().getUpperRightY() - 30;
>>>                 float margin = 50;
>>>               // starting y position is whole page height subtracted by top and bottom margin
>>>              float yStartNewPage = page.getMediaBox().getHeight() - (2 * margin);
>>>            // we want table across whole page width (subtracted by left and right margin ofcourse)
>>>              float tableWidth = page.getMediaBox().getWidth() - (2 * margin);
>>>
>>>              boolean drawContent = true;
>>>             float bottomMargin = 70;
>>>            // y position is your coordinate of top left corner of the table
>>>             float yPosition = yCordinate;
>>>
>>>             BaseTable table = null;
>>>            try {
>>>               table = new BaseTable(yPosition, yStartNewPage,
>>>               bottomMargin, tableWidth, margin, document, page, true, drawContent);
>>>           } catch (IOException e) {
>>>                 e.printStackTrace();
>>>           }
>>>                return table;
>>>       }
>>> }
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
>>> For additional commands, e-mail: users-help@pdfbox.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
>> For additional commands, e-mail: users-help@pdfbox.apache.org
>>
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
> For additional commands, e-mail: users-help@pdfbox.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: users-help@pdfbox.apache.org