Package com.lowagie.examples.objects.anchors

Source Code of com.lowagie.examples.objects.anchors.SimpleAnnotations

/*
* $Id$
*
* This code is part of the 'iText Tutorial'.
* You can find the complete tutorial at the following address:
* http://itextdocs.lowagie.com/tutorial/
*
* This code is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* itext-questions@lists.sourceforge.net
*/

package com.lowagie.examples.objects.anchors;

import java.io.FileOutputStream;
import java.net.URL;

import com.lowagie.text.Annotation;
import com.lowagie.text.Chunk;
import com.lowagie.text.LwgDocument;
import com.lowagie.text.LwgImage;
import com.lowagie.text.LwgPageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfAction;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfWriter;

/**
* Creates two documents with different types of Annotations.
*
* @author blowagie
*/

public class SimpleAnnotations {

  /**
   * Creates documents with some simple annotations.
   *
   * @param args
   *            no arguments needed
   */
  public static void main(String[] args) {

    System.out.println("Simple Annotations");

    // step 1: creation of a document-object
    LwgDocument document1 = new LwgDocument(LwgPageSize.A4, 10, 10, 10, 10);
    LwgDocument document2 = new LwgDocument(LwgPageSize.A4, 10, 10, 10, 10);
    try {

      // step 2:
      PdfWriter writer1 = PdfWriter.getInstance(document1,
          new FileOutputStream("SimpleAnnotations1.pdf"));
      PdfWriter writer2 = PdfWriter.getInstance(document2,
          new FileOutputStream("SimpleAnnotations2.pdf"));
      // step 3:
            writer2.setPdfVersion(PdfWriter.VERSION_1_5);
      document1.open();
      document2.open();
      // step 4:
      document1.add(new Paragraph("Each square on this page represents an annotation."));
      // document1
            PdfContentByte cb1 = writer1.getDirectContent();
            Annotation a1 = new Annotation(
                "authors", "Maybe it's because I wanted to be an author myself that I wrote iText.",
          250f, 700f, 350f, 800f);
            document1.add(a1);
            Annotation a2 = new Annotation(250f, 550f, 350f, 650f,
                new URL("http://www.lowagie.com/iText/"));
            document1.add(a2);
            Annotation a3 = new Annotation(250f, 400f, 350f, 500f,
                "http://www.lowagie.com/iText");
            document1.add(a3);
      LwgImage image = LwgImage.getInstance("iText.gif");
      image.setAnnotation(a3);
      document1.add(image);
            Annotation a4 = new Annotation(
                250f, 250f, 350f, 350f, PdfAction.LASTPAGE);
            document1.add(a4);
            // draw rectangles to show where the annotations were added
            cb1.rectangle(250, 700, 100, 100);
            cb1.rectangle(250, 550, 100, 100);
            cb1.rectangle(250, 400, 100, 100);
            cb1.rectangle(250, 250, 100, 100);
            cb1.stroke();
            // more content
            document1.newPage();
            for (int i = 0; i < 5; i++) {
              document1.add(new Paragraph("blahblahblah"));
            }
            document1.add(new Annotation("blahblah", "Adding an annotation without specifying coordinates"));
            for (int i = 0; i < 3; i++) {
              document1.add(new Paragraph("blahblahblah"))
            }
            document1.newPage();
            document1.add(new Chunk("marked chunk").setLocalDestination("mark"));
           
            // document2
      document2.add(new Paragraph("Each square on this page represents an annotation."));
            PdfContentByte cb2 = writer2.getDirectContent();
            Annotation a5 = new Annotation(100f, 700f, 200f, 800f,
                "cards.mpg", "video/mpeg", true);
            document2.add(a5);
            Annotation a6 = new Annotation(100f, 550f, 200f, 650f,
                "SimpleAnnotations1.pdf", "mark");
            document2.add(a6);
            Annotation a7 = new Annotation(100f, 400f, 200f, 500f,
                "SimpleAnnotations1.pdf", 2);
            document2.add(a7);
            Annotation a8 = new Annotation100f, 250f, 200f, 350f,
                "C://windows/notepad.exe", null, null, null);
            document2.add(a8);
            // draw rectangles to show where the annotations were added
            cb2.rectangle(100, 700, 100, 100);
            cb2.rectangle(100, 550, 100, 100);
            cb2.rectangle(100, 400, 100, 100);
            cb2.rectangle(100, 250, 100, 100);
            cb2.stroke();
    } catch (Exception de) {
      de.printStackTrace();
    }

    // step 5: we close the document
    document1.close();
    document2.close();
  }
}
TOP

Related Classes of com.lowagie.examples.objects.anchors.SimpleAnnotations

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.