Package com.itextpdf.forms.xfdf
Class XfdfObjectFactory
- java.lang.Object
-
- com.itextpdf.forms.xfdf.XfdfObjectFactory
-
public class XfdfObjectFactory extends java.lang.ObjectA factory for creatingXfdfObjectobjects.
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.Loggerlogger
-
Constructor Summary
Constructors Constructor Description XfdfObjectFactory()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static voidaddAnnotation(PdfAnnotation pdfAnnot, AnnotsObject annots, int pageNumber)private static voidaddAnnotations(PdfDocument pdfDoc, XfdfObject resultXfdf)private voidaddAnnotObjectAttribute(AnnotObject annotObject, org.w3c.dom.Node attributeNode)private static voidaddBorderStyleAttributes(AnnotObject annotObject, PdfNumber width, PdfArray dashes, PdfName style)private static voidaddCommonAnnotationAttributes(AnnotObject annot, PdfAnnotation pdfAnnotation)private static voidaddMarkupAnnotationAttributes(AnnotObject annot, PdfMarkupAnnotation pdfMarkupAnnotation)private static voidaddPopup(PdfAnnotation pdfAnnot, AnnotsObject annots, int pageNumber)private static AnnotObjectconvertPdfPopupToAnnotObject(PdfPopupAnnotation pdfPopupAnnotation, int pageNumber)private static voidcreateCircleAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateDestElement(PdfArray dest, AnnotObject annot)private static voidcreateFreeTextAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot)private static voidcreateLineAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateLinkAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot)private static voidcreatePolyGeomAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateSquareAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateStampAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateTextAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static voidcreateTextMarkupAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)private static AnnotObjectcreateXfdfAnnotation(PdfAnnotation pdfAnnotation, int pageNumber)XfdfObjectcreateXfdfObject(PdfDocument document, java.lang.String filename)Extracts data from pdf document acroform and annotations into XfdfObject.XfdfObjectcreateXfdfObject(java.io.InputStream xfdfInputStream)Extracts data from input stream into XfdfObject.private booleanisAnnotationSubtype(java.lang.String tag)private static booleanisAnnotSupported(java.lang.String nodeName)private static booleanisSupportedAnnotation(PdfAnnotation pdfAnnotation)private voidreadAnnotsList(org.w3c.dom.Node node, AnnotsObject annotsObject)private voidreadFieldList(org.w3c.dom.Node node, FieldsObject fieldsObject)private java.util.List<AttributeObject>readXfdfRootAttributes(org.w3c.dom.Element root)private static voidupdateXfdfAnnotation(AnnotObject annotObject, PdfAnnotation pdfAnnotation, int pageNumber)private voidvisitAnnotationInnerNodes(AnnotObject annotObject, org.w3c.dom.Node annotNode, AnnotsObject annotsObject)private voidvisitAnnotationNode(org.w3c.dom.Node currentNode, AnnotsObject annotsObject)private voidvisitChildNodes(org.w3c.dom.NodeList nList, XfdfObject xfdfObject)private voidvisitContentsRichTextSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)private voidvisitContentsSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)private voidvisitElementNode(org.w3c.dom.Node node, XfdfObject xfdfObject)private voidvisitFieldElementNode(org.w3c.dom.Node node, FieldObject parentField, FieldsObject fieldsObject)private voidvisitFNode(org.w3c.dom.Node node, XfdfObject xfdfObject)private voidvisitIdsNode(org.w3c.dom.Node node, XfdfObject xfdfObject)private voidvisitInnerFields(FieldObject parentField, org.w3c.dom.Node parentNode, FieldsObject fieldsObject)private voidvisitPopupSubelement(org.w3c.dom.Node popupNode, AnnotObject annotObject)private voidvisitVerticesSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)
-
-
-
Method Detail
-
createXfdfObject
public XfdfObject createXfdfObject(PdfDocument document, java.lang.String filename)
Extracts data from pdf document acroform and annotations into XfdfObject.- Parameters:
document- Pdf document for data extractionfilename- The name od pdf document for data extraction- Returns:
- XfdfObject containing data from pdf forms and annotations.
-
createXfdfObject
public XfdfObject createXfdfObject(java.io.InputStream xfdfInputStream) throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException
Extracts data from input stream into XfdfObject. Typically input stream is based on .xfdf file.- Parameters:
xfdfInputStream- the input stream containing xml-styled xfdf data- Returns:
- XfdfObject containing original xfdf data.
- Throws:
javax.xml.parsers.ParserConfigurationException- if a XfdfObject cannot be created which satisfies the configuration requested.org.xml.sax.SAXException- if any parse errors occurs.
-
visitFNode
private void visitFNode(org.w3c.dom.Node node, XfdfObject xfdfObject)
-
visitIdsNode
private void visitIdsNode(org.w3c.dom.Node node, XfdfObject xfdfObject)
-
visitElementNode
private void visitElementNode(org.w3c.dom.Node node, XfdfObject xfdfObject)
-
visitChildNodes
private void visitChildNodes(org.w3c.dom.NodeList nList, XfdfObject xfdfObject)
-
isAnnotSupported
private static boolean isAnnotSupported(java.lang.String nodeName)
-
readAnnotsList
private void readAnnotsList(org.w3c.dom.Node node, AnnotsObject annotsObject)
-
visitAnnotationNode
private void visitAnnotationNode(org.w3c.dom.Node currentNode, AnnotsObject annotsObject)
-
visitAnnotationInnerNodes
private void visitAnnotationInnerNodes(AnnotObject annotObject, org.w3c.dom.Node annotNode, AnnotsObject annotsObject)
-
visitPopupSubelement
private void visitPopupSubelement(org.w3c.dom.Node popupNode, AnnotObject annotObject)
-
visitContentsSubelement
private void visitContentsSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)
-
visitContentsRichTextSubelement
private void visitContentsRichTextSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)
-
visitVerticesSubelement
private void visitVerticesSubelement(org.w3c.dom.Node parentNode, AnnotObject annotObject)
-
addAnnotObjectAttribute
private void addAnnotObjectAttribute(AnnotObject annotObject, org.w3c.dom.Node attributeNode)
-
isAnnotationSubtype
private boolean isAnnotationSubtype(java.lang.String tag)
-
readFieldList
private void readFieldList(org.w3c.dom.Node node, FieldsObject fieldsObject)
-
visitFieldElementNode
private void visitFieldElementNode(org.w3c.dom.Node node, FieldObject parentField, FieldsObject fieldsObject)
-
visitInnerFields
private void visitInnerFields(FieldObject parentField, org.w3c.dom.Node parentNode, FieldsObject fieldsObject)
-
readXfdfRootAttributes
private java.util.List<AttributeObject> readXfdfRootAttributes(org.w3c.dom.Element root)
-
addPopup
private static void addPopup(PdfAnnotation pdfAnnot, AnnotsObject annots, int pageNumber)
-
addAnnotation
private static void addAnnotation(PdfAnnotation pdfAnnot, AnnotsObject annots, int pageNumber)
-
addAnnotations
private static void addAnnotations(PdfDocument pdfDoc, XfdfObject resultXfdf)
-
updateXfdfAnnotation
private static void updateXfdfAnnotation(AnnotObject annotObject, PdfAnnotation pdfAnnotation, int pageNumber)
-
addCommonAnnotationAttributes
private static void addCommonAnnotationAttributes(AnnotObject annot, PdfAnnotation pdfAnnotation)
-
addMarkupAnnotationAttributes
private static void addMarkupAnnotationAttributes(AnnotObject annot, PdfMarkupAnnotation pdfMarkupAnnotation)
-
addBorderStyleAttributes
private static void addBorderStyleAttributes(AnnotObject annotObject, PdfNumber width, PdfArray dashes, PdfName style)
-
createTextMarkupAnnotation
private static void createTextMarkupAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createTextAnnotation
private static void createTextAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createCircleAnnotation
private static void createCircleAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createSquareAnnotation
private static void createSquareAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createStampAnnotation
private static void createStampAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createFreeTextAnnotation
private static void createFreeTextAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot)
-
createLineAnnotation
private static void createLineAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createLinkAnnotation
private static void createLinkAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot)
-
createDestElement
private static void createDestElement(PdfArray dest, AnnotObject annot)
-
createPolyGeomAnnotation
private static void createPolyGeomAnnotation(PdfAnnotation pdfAnnotation, AnnotObject annot, int pageNumber)
-
createXfdfAnnotation
private static AnnotObject createXfdfAnnotation(PdfAnnotation pdfAnnotation, int pageNumber)
-
convertPdfPopupToAnnotObject
private static AnnotObject convertPdfPopupToAnnotObject(PdfPopupAnnotation pdfPopupAnnotation, int pageNumber)
-
isSupportedAnnotation
private static boolean isSupportedAnnotation(PdfAnnotation pdfAnnotation)
-
-