[ https://issues.apache.org/jira/browse/PDFBOX-1533?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14054671#comment-14054671 ]
Maruan Sahyoun edited comment on PDFBOX-1533 at 7/8/14 8:57 AM: ---------------------------------------------------------------- The issue is because part1.pdf references the same 2 pages 3 times within the document catalog (/Kids [3 0 R, 3 0 R, 3 0 R]). was (Author: msahyoun): The issue is because part1.pdf in PDFBOX-1533 references the same 2 pages 3 times within the document catalog (/Kids [3 0 R, 3 0 R, 3 0 R]). > When merging certain PDF's several odd looking empty pages occure in the > result > ------------------------------------------------------------------------------- > > Key: PDFBOX-1533 > URL: https://issues.apache.org/jira/browse/PDFBOX-1533 > Project: PDFBox > Issue Type: Bug > Components: Utilities > Affects Versions: 1.7.1, 1.8.4 > Reporter: Christian Connert > Attachments: sample_pdf.zip > > > Unfortunately I cannot attach a input file for this case as it contains > confidential customer data, but I'll try to explain the problem in depth so > you hopefully are able to track it down. > When we merge certain PDF's with the PDFMergerUtility the result contains > several empty pages at the end of the document. It seems like that only > certain pdf versions are effected (i.p.: 1.5 (Acrobat 6.x)). > I tracked the problem down to the the following part in the appendDocument > method of the PDFMergerUtility: > {code} > //finally append the pages > List<PDPage> pages = srcCatalog.getAllPages(); > Iterator<PDPage> pageIter = pages.iterator(); > while( pageIter.hasNext() ) > { > PDPage page = pageIter.next(); > PDPage newPage = > new PDPage( (COSDictionary)cloner.cloneForNewDocument( > page.getCOSDictionary() ) ); > newPage.setCropBox( page.findCropBox() ); > newPage.setMediaBox( page.findMediaBox() ); > newPage.setRotation( page.findRotation() ); > destination.addPage( newPage ); > } > {code} > The problem is that call to srcCatalog.getAllPages(); returns for example 6 > PDPage objects, but for the same input document, the call to > source.getNumberOfPages() returns only 2. Thus we add 4 odd empty pages to > the result document. > I hope this description is good enough to figure out the problem. Don't > hesitate to ask for further details. -- This message was sent by Atlassian JIRA (v6.2#6252)