By using
Anchor tag, you can specify hyper links. You can specify hyper links that are
internal to the document (or) outside the document. In this post, I am going to
explain how to specify external and internal hyper links.
Anchor
class provides following constructors to define Anchor instance.
public
Anchor()
public
Anchor(final float leading)
public
Anchor(final Chunk chunk)
public
Anchor(final String string)
public
Anchor(final String string, final Font font)
public
Anchor(final float leading, final Chunk chunk)
public
Anchor(final float leading, final String string)
public
Anchor(final float leading, final String string, final Font font)
public
Anchor(final Phrase phrase)
Adding External hyper links
It is very
simple, Define hyper link with some title.
Anchor
anchor = new Anchor("Java Tutorial");
After that
specify the url for above anchor instance using reference method.
anchor.setReference("https://self-learning-java-tutorial.blogspot.com");
Following
is the complete working application.
import java.io.FileNotFoundException; import java.io.FileOutputStream; import com.itextpdf.text.Anchor; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Font; import com.itextpdf.text.FontFactory; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfWriter; public class TestAnchor { private static Font font = FontFactory.getFont(FontFactory.COURIER, 15, Font.NORMAL, BaseColor.GRAY); public static void main(String args[]) throws FileNotFoundException, DocumentException { Anchor anchor = new Anchor("Java Tutorial", font); anchor.setReference("https://self-learning-java-tutorial.blogspot.com"); Paragraph paragraph = new Paragraph("You Can learn Java Tutorials at "); paragraph.add(anchor); Document document = new Document(); PdfWriter.getInstance(document, new FileOutputStream("tutorials.pdf")); document.open(); document.add(paragraph); document.close(); } }
Adding internal hyper links
Some times
you want to point to internal hyper links. Following post explains how to add
internal hyper links.
It is two-step
process.
1. Create
target anchor and give name to it.
Anchor
anchorTarget =new Anchor("Java is Platform Independent");
anchorTarget.setName("linkTarget");
2. Create
another anchor tag and give the reference as the name of anchor tag created in
step 1.
Anchor
anchor = new Anchor("Java Tutorial", font);
anchor.setReference("#linkTarget");
Following
is the complete working application.
import java.io.FileNotFoundException; import java.io.FileOutputStream; import com.itextpdf.text.Anchor; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Font; import com.itextpdf.text.FontFactory; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfWriter; public class TestAnchor { private static Font font = FontFactory.getFont(FontFactory.COURIER, 15, Font.NORMAL, BaseColor.GRAY); public static void main(String args[]) throws FileNotFoundException, DocumentException { Anchor anchor = new Anchor("Java Tutorial", font); anchor.setReference("#linkTarget"); Paragraph paragraph = new Paragraph("You Can learn Java Tutorials at "); paragraph.add(anchor); Anchor anchorTarget = new Anchor("Java is Platform Independent"); anchorTarget.setName("linkTarget"); Paragraph targetParagraph = new Paragraph(); targetParagraph.add(anchorTarget); Document document = new Document(); PdfWriter.getInstance(document, new FileOutputStream("tutorials.pdf")); document.open(); document.add(paragraph); document.add(new Paragraph("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n")); document.add(targetParagraph); document.close(); } }
No comments:
Post a Comment