pdfbox-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maruan Sahyoun <sahy...@fileaffairs.de>
Subject Re: Insert Cover Page (2.0.0)
Date Mon, 12 Oct 2015 23:35:57 GMT
Hi,

I currently can't try it myself but

	PDDocument document = PDDocument.load(…)
        PDPage pageToInsert = new PDPage();
        PDPageTree pageTree = document.getPages();
        COSDictionary pagesDictionary = (COSDictionary) document.getDocumentCatalog().getCOSObject().getDictionaryObject(COSName.PAGES);
        COSArray kids = (COSArray) pagesDictionary.getDictionaryObject(COSName.KIDS);
        kids.add(0,pageToInsert.getCOSObject());
        pageToInsert.getCOSObject().setItem(COSName.PARENT, pagesDictionary);
        pagesDictionary.setInt(COSName.COUNT, pagesDictionary.getInt(COSName.COUNT) + 1);
	document.save(...);
        document.close();

BR
Maruan


> Am 13.10.2015 um 00:23 schrieb Adam Retter <adam.retter@googlemail.com>:
> 
> Thanks,
> 
> I have implemented it using merge, but unfortunately that almost
> doubles my processing time :-(
> 
> The steps my app takes:
> 
> 1. I take a PDF of almost 2000 pages and add a footer to each page.
> This takes about 12 seconds.
> 2. I then create a PDF which has my single cover page.
> 3. I merge the two PDFs together. This takes an additional 10 seconds.
> 
> I guess that if we had the ability to insert a page then it would be
> much faster than a merge?
> 
> On 12 October 2015 at 21:23, Tilman Hausherr <THausherr@t-online.de> wrote:
>> Am 12.10.2015 um 22:03 schrieb Adam Retter:
>>> 
>>> Hey there,
>>> 
>>> I want to add a cover page to a PDF, i.e. add a new *first* page to an
>>> existing PDF.
>>> 
>>> I managed this with 1.8.0 by manipulating the page nodes via
>>> PDPage#setParent, however I can't figure out how to do this with
>>> 2.0.0-SNAPSHOT.
>>> 
>>> Can anyone tell me how to insert a new page at index 0 for an existing
>>> PDF?
>>> Perhaps subsequently adding an example to
>>> 
>>> https://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/
>>> could help others?
>> 
>> 
>> You can't... unless you create a new PDDocument with the cover page and then
>> run a merge.
>> 
>> Your feature request already has an issue:
>> https://issues.apache.org/jira/browse/PDFBOX-2400
>> 
>> Tilman
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
>> For additional commands, e-mail: users-help@pdfbox.apache.org
>> 
> 
> 
> 
> -- 
> Adam Retter
> 
> skype: adam.retter
> tweet: adamretter
> http://www.adamretter.org.uk
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@pdfbox.apache.org
> For additional commands, e-mail: users-help@pdfbox.apache.org
> 


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message