org.faceless.pdf2
Class AnnotationMarkup

java.lang.Object
  extended by org.faceless.pdf2.PDFAnnotation
      extended by org.faceless.pdf2.AnnotationMarkup
All Implemented Interfaces:
Cloneable

public class AnnotationMarkup
extends PDFAnnotation

This class represents the type of PDFAnnotation created by the "Text Edit" option in Acrobat 6. There are several different subtypes of this annotation - "Highlight", "Underline", "Squiggly" or "StrikeOut", all of which can be determined by the crossed-out or underlined text in the PDF.

Since:
2.3.6

Constructor Summary
AnnotationMarkup(String type)
          Create a new Markup Annotation.
 
Method Summary
 float[] getCorners()
          Return the four corners of the text underlying the annotation
 String getType()
          Return the type of Markup Annotation - "Highlight", "Squiggly", "Underline" or "StrikeOut" (or, theoretically, another unknown value).
 void setCorners(float[] corners)
          Set a series of corners of the quadrilateral(s) that encompass the text underlying this annotation.
 void setCorners(float x1, float y1, float x2, float y2, float x3, float y3, float x4, float y4)
          Set the four corners (x1,y1) (x2,y2) (x3,y3) (x4,y4) of the quadrilateral that encompasses the text underlying this annotation.
 void setRectangle(float x1, float y1, float x2, float y2)
          Set the rectangle for the annotation - where it is on the page.
 String toString()
           
 
Methods inherited from class org.faceless.pdf2.PDFAnnotation
addPropertyChangeListener, addReview, flatten, getAuthor, getColor, getContents, getCreationDate, getInReplyTo, getMetaData, getModifyDate, getOpacity, getPage, getPopup, getRectangle, getReplies, getReviews, getSubject, getUniqueID, hasAppearanceState, isContentLocked, isPositionLocked, isPrintable, isReadOnly, isVisible, removePropertyChangeListener, setAuthor, setColor, setContents, setCreationDate, setInReplyTo, setLocked, setMetaData, setModifyDate, setOpacity, setPage, setPrintable, setReadOnly, setSubject, setUniqueID, setVisible
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AnnotationMarkup

public AnnotationMarkup(String type)
Create a new Markup Annotation. The type of markup must be specified, and may be one of:

Parameters:
type - the type of Markup Annotation
Method Detail

getType

public String getType()
Return the type of Markup Annotation - "Highlight", "Squiggly", "Underline" or "StrikeOut" (or, theoretically, another unknown value).

Overrides:
getType in class PDFAnnotation
Returns:
the type of Markup annotation

setCorners

public void setCorners(float x1,
                       float y1,
                       float x2,
                       float y2,
                       float x3,
                       float y3,
                       float x4,
                       float y4)
Set the four corners (x1,y1) (x2,y2) (x3,y3) (x4,y4) of the quadrilateral that encompasses the text underlying this annotation. The baseline of the text this annotation is highlighting is assumed to run from (x1,y1) to (x2,y2).

Parameters:
x1 - the X co-ordinate of the bottom-left corner of the text
y1 - the Y co-ordinate of the bottom-left corner of the text
x2 - the X co-ordinate of the bottom-right corner of the text
y2 - the Y co-ordinate of the bottom-right corner of the text
x3 - the X co-ordinate of the top-left corner of the text
y3 - the Y co-ordinate of the top-left corner of the text
x4 - the X co-ordinate of the top-right corner of the text
y4 - the Y co-ordinate of the top-right corner of the text

setCorners

public void setCorners(float[] corners)
Set a series of corners of the quadrilateral(s) that encompass the text underlying this annotation. The points are specified in the same order as for the other setCorners() method. The supplied array must be 8xn long, specifying the n quadrilaterals that make up the annotation. If these points to not define a sequence of (possibly rotated) rectangle shapes, the results are undefined.

Parameters:
corners - an array of 8xn values, each group of 8 specified as (x1,y1, x2,y2, x3,y3, x4,y4)
Since:
2.11.3

setRectangle

public void setRectangle(float x1,
                         float y1,
                         float x2,
                         float y2)
Description copied from class: PDFAnnotation
Set the rectangle for the annotation - where it is on the page. Every annotation must have a rectangle set - if it's not set when the document is written, it's forced to (0,0,0,0).

Note that all co-ordinates are in absolute page co-ordinates. This means they are measured in points from the bottom-left hand corner of the page, regardless of any calls to PDFPage.rotate(float, float, double) or PDFPage.setUnits(float, int) that have been made. This restriction is part of the PDF specification.

Overrides:
setRectangle in class PDFAnnotation
Parameters:
x1 - the X co-ordinate of the bottom-left corner of the rectangle
y1 - the Y co-ordinate of the bottom-left corner of the rectangle
x2 - the X co-ordinate of the top-right corner of the rectangle
y2 - the Y co-ordinate of the top-right corner of the rectangle

getCorners

public float[] getCorners()
Return the four corners of the text underlying the annotation

Returns:
an array of 8xn points, as set by setCorners()

toString

public String toString()


Copyright © 2001-2010 Big Faceless Organization