import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List;
import org.apache.commons.collections.iterators.ArrayListIterator; import com.itextpdf.text.Document; import com.itextpdf.text.pdf.PdfAction; import com.itextpdf.text.pdf.PdfAnnotation; import com.itextpdf.text.pdf.PdfArray; import com.itextpdf.text.pdf.PdfCopy; import com.itextpdf.text.pdf.PdfDestination; import com.itextpdf.text.pdf.PdfDictionary; import com.itextpdf.text.pdf.PdfName; import com.itextpdf.text.pdf.PdfObject; import com.itextpdf.text.pdf.PdfReader; import com.itextpdf.text.pdf.PdfWriter; public class links { public static void main(String[] args) { PdfReader reader=new PdfReader("E:/bookmark.pdf"); reader.consolidateNamedDestinations(); Document doc=new Document(reader.getPageSizeWithRotation(1)); String dest = "E:/links.pdf"; PdfCopy pdfCopy = new PdfCopy(doc,new FileOutputStream(dest) ); doc.open(); for (int i=1; i <= reader.getNumberOfPages() ;i++) { PdfDictionary pageDic = reader.getPageN(i); PdfDestination d = new PdfDestination(PdfDestination.XYZ,-1,-1,0.0F) ; PdfAction act =PdfAction.gotoLocalPage(reader.getNumberOfPages(), d, pdfCopy); if (pageDic.get(PdfName.ANNOTS) != null) { //reader.addPdfObject(pageDic.get(PdfName.ANNOTS)); PdfArray arrAnnot = (PdfArray)reader.addPdfObject(pageDic.get(PdfName.ANNOTS)); for (int j = 0; j < arrAnnot.size(); ++j) { PdfDictionary annotation = (PdfDictionary)PdfReader.GetPdfObjectRelease(arrAnnot[j]); if (PdfName.LINK.equals(annotation.get(PdfName.SUBTYPE))) { annotation.remove(PdfName.DEST); annotation.put(PdfName.DEST, act); } } } pdfCopy.addPage(pdfCopy .getImportedPage(reader, i)); } pdfCopy.close(); } } Here is my Code, my error in this line it needs PRInderectReference and with its type cast but i need pdfArray to traverse PdfArray arrAnnot = (PdfArray)reader.addPdfObject(pageDic.get(PdfName.ANNOTS)); Using itext Pdf <http://itext-general.2136553.n4.nabble.com/file/n4659908/image.png> -- View this message in context: http://itext-general.2136553.n4.nabble.com/I-Want-to-Change-all-the-Links-Destination-of-Existing-Pdf-to-PdfDestination-XYZ-1-1-0-0F-tp4659908.html Sent from the iText - General mailing list archive at Nabble.com. ------------------------------------------------------------------------------ _______________________________________________ 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