pdfbox-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tilman Hausherr <THaush...@t-online.de>
Subject Re: Insert Cover Page (2.0.0)
Date Tue, 13 Oct 2015 06:42:45 GMT
Am 13.10.2015 um 01:35 schrieb Maruan Sahyoun:
> 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();

Heh heh, after having looked at the source code, I think this should 
work fine. I thought there is some caching, but there isn't.

Tilman

>
> 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
>>
>


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


Mime
View raw message