Java tutorial
import java.io.FileOutputStream; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.Font; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfAction; import com.lowagie.text.pdf.PdfContentByte; import com.lowagie.text.pdf.PdfDestination; import com.lowagie.text.pdf.PdfOutline; import com.lowagie.text.pdf.PdfWriter; public class OutlineActionsRemotePDF { public static void main(String[] args) { Document document = new Document(); Document remote = new Document(); try { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("OutlineActionsRemotePDF.pdf")); PdfWriter.getInstance(remote, new FileOutputStream("remote.pdf")); writer.setViewerPreferences(PdfWriter.PageModeUseOutlines); remote.open(); document.open(); document.add(new Paragraph("Outline action example")); PdfContentByte cb = writer.getDirectContent(); PdfOutline root = cb.getRootOutline(); PdfOutline links = new PdfOutline(root, new PdfAction("http://www.java2s.com"), "Useful links"); new PdfOutline(root, new PdfAction("remote.pdf", 1), "Go to yhe first page of a remote file"); new PdfOutline(root, new PdfAction("remote.pdf", "test"), "Go to a local destination in a remote file"); remote.add(new Paragraph("Text")); remote.newPage(); Paragraph p = new Paragraph("This paragraph contains a "); p.add(new Chunk("local destination").setLocalDestination("test")); remote.add(p); } catch (Exception ioe) { System.err.println(ioe.getMessage()); } document.close(); remote.close(); } }