You must use the writer from the PdfStamper that outputs the doc when creating the Image.
Paulo > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On > Behalf Of Jörn Stuphorn > Sent: Friday, September 14, 2007 4:25 PM > To: [email protected] > Subject: Re: [iText-questions] Combining / Fusing pages from > two PDFs in onepage. > > The code I posted before was not the code, that led to the > error message > I posted before (as pdf cannot be accessed through Image.getInstance). > > I try to wrap the pdf (cover.pdf) into an Image Object by using my > function createTemplateImage. > > When I add this image to the PdfContentByte under, opening > the resulting > PDF File with Acrobat Reader gives me the error message "There was an > error processing a page. There was a problem reading this > document.(18)". > > Here the code (without exception handling and comments): > > public static File getComponent(BaseFont stdTextFont, BaseFont > stdExtraFont, File pageTemplate) { > > Image templateImage = createTemplateImage("/tmp/cover.pdf"); > templateImage.setAbsolutePosition(200,400); > > File contentFile = createTitle(stdTextFont, stdExtraFont); > PdfReader templateReader = new PdfReader(contentFile.toString()); > File pdfTempFile = File.createTempFile("pdf-title-", ".pdf"); > > FileOutputStream fos = new FileOutputStream(pdfTempFile); > PdfStamper stamper = new PdfStamper(templateReader,fos); > > PdfContentByte under = stamper.getUnderContent(1); > under.addImage(templateImage); > stamper.setFormFlattening(true); > stamper.setRotateContents(false); > stamper.close(); > } > > private static Image createTemplateImage(File pageTemplate){ > PdfReader templateReader = new PdfReader(pageTemplate.toString()); > File pdfTempFile = File.createTempFile("pdf-background-", ".pdf"); > > FileOutputStream fos = new FileOutputStream(pdfTempFile); > PdfStamper stamper = new PdfStamper(templateReader,fos); > > PdfImportedPage importedTemplate = > stamper.getImportedPage(templateReader, 1); > Image templateImage = Image.getInstance(importedTemplate); > templateReader.close(); > fos.close(); > return templateImage; > } > > > What am I doing wrong? > > Best regards, > Joern Aviso Legal: Esta mensagem é destinada exclusivamente ao destinatário. Pode conter informação confidencial ou legalmente protegida. A incorrecta transmissão desta mensagem não significa a perca de confidencialidade. Se esta mensagem for recebida por engano, por favor envie-a de volta para o remetente e apague-a do seu sistema de imediato. É proibido a qualquer pessoa que não o destinatário de usar, revelar ou distribuir qualquer parte desta mensagem. Disclaimer: This message is destined exclusively to the intended receiver. It may contain confidential or legally protected information. The incorrect transmission of this message does not mean the loss of its confidentiality. If this message is received by mistake, please send it back to the sender and delete it from your system immediately. It is forbidden to any person who is not the intended receiver to use, distribute or copy any part of this message. ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ iText-questions mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/itext-questions Buy the iText book: http://itext.ugent.be/itext-in-action/
