import java.io.FileOutputStream;
import com.lowagie.text.Document;
import com.lowagie.text.Font;
import com.lowagie.text.PageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfDestination;
import com.lowagie.text.pdf.PdfOutline;
import com.lowagie.text.pdf.PdfPageEventHelper;
import com.lowagie.text.pdf.PdfWriter;
public class BookmarksPDF extends PdfPageEventHelper {
public void onParagraph(PdfWriter writer, Document document, float position) {
PdfContentByte cb = writer.getDirectContent();
new PdfOutline(cb.getRootOutline(), new PdfDestination(PdfDestination.FITH, position), "paragraph at position: " +position);
}
public static void main(String[] args) {
Document document = new Document(PageSize.A6);
try {
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("BookmarksPDF.pdf"));
writer.setViewerPreferences(PdfWriter.PageModeUseOutlines);
document.open();
writer.setPageEvent(new BookmarksPDF());
document.add(new Paragraph("Text", new Font(Font.HELVETICA, 12)));
document.newPage();
document.add(new Paragraph("Text Text", new Font(Font.HELVETICA, 24)));
document.newPage();
document.add(new Paragraph("Text Text Text", new Font(Font.HELVETICA, 36)));
document.newPage();
document.add(new Paragraph("Text Text Text Text", new Font(Font.HELVETICA, 48)));
} catch (Exception de) {
de.printStackTrace();
}
document.close();
}
}
|