> -----Original Message----- > From: Sivasubramanian Gurunathan [SMTP:[EMAIL PROTECTED] > Sent: Thursday, September 18, 2003 5:09 > To: Paulo Soares; [EMAIL PROTECTED] > Subject: RE: [iText-questions] Javascript are not getting copied in > PDFCop y > > Hi, > Thanks for the response. If PdfCopy copies only pages, > can you tell me why only some part of the JavaScript > is copying from the original pdf.? > Only partial javascript is getting copied because of > that I am getting the script error. > > Can you please advice me how to prevent that? > It can't be prevented. JavaScript only works for the pdf it was designed for. It has to know the pdf. When pdfs are joined the place and name of objects can/must change/overlap and you end up with something that doesn't work. It may work in controlled situations but it always requires custom code.
> Further to that according to your mail, only single > file can have fields, the other files must be > flattened before concatenating. Can you please explain > me the concept "flattened" and how we can do that. > The fields are converted to content. It's done with PdfStamper.setFormFlattening(true). > Without flattening are you finding any issue with the > code I have attached? > Looks good. Best Regards, Paulo Soares > Thanks and Regards, > G.Siva. > > --- Paulo Soares <[EMAIL PROTECTED]> wrote: > > PdfCopy only copies pages not other objects at a > > global level. Furthermore > > only a single file can have fields, the other files > > must be flattened before > > concatenating. > > > > Best Regards, > > Paulo Soares > > > > > -----Original Message----- > > > From: Sivasubramanian Gurunathan > > [SMTP:[EMAIL PROTECTED] > > > Sent: Tuesday, September 16, 2003 12:48 > > > To: [EMAIL PROTECTED] > > > Subject: [iText-questions] Javascript are not > > getting copied in > > > PDFCopy > > > > > > Hi all, > > > > > > I am using PDFCopy for merging PDF after mapping > > the > > > fields using PDFStamper. > > > > > > While opening the Merged Pdf, I am getting a > > script > > > error, when I opened the form in Acrobat Editor > > 5.0. > > > The detailed error is below. > > > > > > ================================================ > > > Acrobat Database Connectivity Built-in Functions > > > Version 5.0 > > > Acrobat EScript Built-in Functions Version 5.0 > > > Acrobat Annotations / Collaboration Built-in > > Functions > > > Version 5.0 > > > > > > ReferenceError: CS_PDF_Util2_OnFormLoad is not > > defined > > > ================================================ > > > Could anyone tell me how to prevent this error. I > > am > > > not getting this error when I opened the merged > > pdf in > > > Acrobat reader 5.0. > > > > > > Herewith I am attaching the function I used for > > > mapping values and merging pdf. > > > > > > ================================================= > > > public String > > > PrintPDFDocumentUsingDataObject(String[] > > > PDFFileArray,HashMap objHashMap) { > > > > > > //PDFGen pp = new PDFGen(); > > > String lSFileInPdf = ""; > > > String lSFileOutPdf = ""; > > > String lSFinalOutPdf = ""; > > > PdfReader objPdfReader = null; > > > PdfStamper objPdfStamper = null; > > > HashMap pdffields = null; > > > String lSKeyString = ""; > > > ArrayList KeyArray = new ArrayList(); > > > ArrayList PDFOPArray = new ArrayList(); > > > try { > > > if (PDFFileArray != null && > > PDFFileArray.length > > > > 0) { > > > for (int FileCount = 0; FileCount < > > > PDFFileArray.length; FileCount++) { > > > lSFileInPdf = PDFFileArray[FileCount]; > > > if(lSFileInPdf != null && > > > !lSFileInPdf.equalsIgnoreCase("")) > > > { > > > Log.print("Input File Path" + > > lSFileInPdf); > > > if (lSFileInPdf.indexOf(".pdf") != -1) { > > > lSFileOutPdf = > > lSFileInPdf.substring(0, > > > lSFileInPdf.indexOf(".pdf")); > > > } > > > Date objdate = new Date(); > > > long llDate = objdate.getTime(); > > > //DateFormat objDateFormat = new > > > SimpleDateFormat("ddMMMyyyy"); > > > //lSDate = > > objDateFormat.format(objdate); > > > Log.print("TimeStamp" + > > > Long.toString(llDate)); > > > lSFileOutPdf = lSFileOutPdf + > > > Long.toString(llDate) + ".pdf"; > > > Log.print("Output File Path" + > > > lSFileOutPdf); > > > PDFOPArray.add(lSFileOutPdf); > > > objPdfReader = new > > PdfReader(lSFileInPdf); > > > Log.print("Check --0"); > > > if (objPdfReader != null) { > > > objPdfStamper = new > > > PdfStamper(objPdfReader, > > > new > > > FileOutputStream(lSFileOutPdf)); > > > Log.print("Check --1"); > > > } > > > if (objPdfStamper != null) { > > > Log.print("Check --2"); > > > AcroFields form = > > > objPdfStamper.getAcroFields(); > > > pdffields = form.getFields(); > > > lSKeyString = pdffields.toString(); > > > Log.print("KeyString" + lSKeyString); > > > KeyArray = GetKeys(lSKeyString); > > > for (int fieldcount = 0; fieldcount < > > > KeyArray.size(); fieldcount++) { > > > String lsKey = (String) > > > KeyArray.get(fieldcount); > > > String lSValue = ""; > > > String lsKey1=""; > > > if (lsKey != null && > > > !lsKey.equalsIgnoreCase("")) { > > > //Log.print("INSIDE KEYCHECk"); > > > Log.print(""+lSFileInPdf.lastIndexOf("/")); > > > Log.print("lSFileInPdf.indexOf(.pdf) > > > ==="+lSFileInPdf.indexOf(".pdf")); > > > Log.print("Key Substring == > > > > > > "+lSFileInPdf.substring(lSFileInPdf.lastIndexOf("/")+1,lSFileInPdf.toLower > > > Case().indexOf(".pdf"))); > > > String temp1 = > > > > > > lSFileInPdf.substring(lSFileInPdf.lastIndexOf("/")+1,lSFileInPdf.toLowerCa > > > se().indexOf(".pdf")).toLowerCase(); > > > Log.print("temp1 ==="+temp1); > > > Log.print("LSKEY =="+lsKey); > > > Log.print("LSKEY.indexof(temp1) > > > =="+lsKey.indexOf(temp1)); > > > lsKey1 = lsKey.substring(temp1.length()+2); > > > //lsKey1 = lsKey.substring(8); > > > Log.print("lsKey1 = " + lsKey1); > > > if (objHashMap.get(lsKey1.trim()) > > != > > > null) { > > > lSValue = (String) > > > objHashMap.get(lsKey1.trim()); > > > Log.print("lsKey" + lsKey); > > > Log.print("lSValue" + lSValue); > > > > > > > > objPdfStamper.getAcroFields().setField(lsKey.trim(), > > > lSValue.trim()); > > > } > > > } > > > //Log.print("lsKey" +lsKey); > > > //Log.print("lSValue" +lSValue); > > > > > > } > > > } > > > objPdfStamper.close(); > > > objPdfReader = null; > > > } > > > } > > > } > > > if (PDFOPArray != null) { > > > Log.print("Check --3"); > > > String out_pdffinal = ""; > > > int n = 0; > > > PdfImportedPage page; > > > Document document = null; > > > PdfCopy writer = null; > > > PRAcroForm form; > > > for (int j = 0; j < PDFOPArray.size(); > > j++) { > > > String out_pdf = (String) > > PDFOPArray.get(j); > > > > > > if (j == 0) { > > > Log.print("Check --4"); > > > Log.print("out_pdf" + out_pdf); > > > if (out_pdf.indexOf(".pdf") != -1) { > > > out_pdffinal = out_pdf.substring(0, > > > out_pdf.indexOf(".pdf")); > > > } > > > Date objdate = new Date(); > > > long llDate = objdate.getTime(); > > > //DateFormat objDateFormat = new > > > SimpleDateFormat("ddMMMyyyy"); > > > //lSDate = > > objDateFormat.format(objdate); > > > Log.print("TimeStamp" + > > > Long.toString(llDate)); > > > out_pdffinal = out_pdffinal + > > > Long.toString(llDate) + ".pdf"; > > > Log.print("Output File Path" + > > > out_pdffinal); > > > lSFinalOutPdf = out_pdffinal; > > > Log.print("Check --5"); > > > Log.print("out_pdf" + out_pdf); > > > objPdfReader = new PdfReader(out_pdf); > > > n = objPdfReader.getNumberOfPages(); > > > PdfDictionary dict = > > objPdfReader.getCatalog(); > === message truncated === > > > __________________________________ > Do you Yahoo!? > Yahoo! SiteBuilder - Free, easy-to-use web site design software > http://sitebuilder.yahoo.com ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ iText-questions mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/itext-questions