> First of all, I hope you are aware that AcroFields.ExtractRevision() does > not allow access to arbitrary revisions of a document, merely to all > signed > revisions. Thus, unless you apply signatures, you won't have anything to > extract with that method.
Yes Michael, I'm aware of that. > That being said, there unfortunately is no way to copy or insert revisions > from one PDF into another one as such. Leonard already explained. > > BUT: you can of course add the new document version as a new revision to > the > old PDF document by opening that old PDF in a PdfStamper in append mode > (have a look at the documentation of the PdfStamper constructors) and > importing the pages of the new document version (as exported e.g. by MS > Word) into it while at the same time removing the former pages! Afterwards > you only need to sign the PDF to allow revision extraction by iText. > > Doing this you get a PDF containing all the versions of your document as > revision extractable by e.g. AcroFields.ExtractRevision(). > > The downsides: > > 1. this PDF will become huge soon, as each document version essentially is > stored separately in the document without any cross-revision object reuse. > --- If your process knows that only certain pages have been changed, you > can > make your PDFStamping more intelligent and only replace changed pages. > > 2. page imports as available in the PdfStamper class most likely drop > interactive features (forms, annotations, ...) of the original and may > require rotation during insertion. --- If there are interactive features > in > your PDFs which must be preserved, you can try and implement a copying > routine for them; if you really like challenges, you might want to port > the > PdfCopy page import code to PdfStamper; the page import code there does a > real 1:1 copy. > > 3. Adobe Acrobat and Reader might display the signatures as broken as the > changes from revision to revision proposed here indeed are beyond anything > you can allow to be done to your signed revision. --- If you are not bound > to revision extraction by AcroFields.ExtractRevision() you can drop the > need > to sign the revisions and implement your own revision extraction code > which > either directly works with the %%EOF markers or instead with information > you > inject into the document when creating a new revision. > > Regards, Michael > > Thanks a lot. You were all VERY helpful. I think I am closer to finding a solution now. Best Regards, Kostas. ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_mar _______________________________________________ iText-questions mailing list iText-questions@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/itext-questions iText(R) is a registered trademark of 1T3XT BVBA. Many questions posted to this list can (and will) be answered with a reference to the iText book: http://www.itextpdf.com/book/ Please check the keywords list before you ask for examples: http://itextpdf.com/themes/keywords.php