Class XfdfObjectFactory

java.lang.Object
com.itextpdf.forms.xfdf.XfdfObjectFactory

public class XfdfObjectFactory extends Object
A factory for creating XfdfObject objects.
  • Field Details

    • logger

      private static final org.slf4j.Logger logger
  • Constructor Details

    • XfdfObjectFactory

      public XfdfObjectFactory()
  • Method Details

    • createXfdfObject

      public XfdfObject createXfdfObject(PdfDocument document, String filename)
      Extracts data from pdf document acroform and annotations into XfdfObject.
      Parameters:
      document - Pdf document for data extraction
      filename - The name od pdf document for data extraction
      Returns:
      XfdfObject containing data from pdf forms and annotations.
    • createXfdfObject

      public XfdfObject createXfdfObject(InputStream xfdfInputStream) throws ParserConfigurationException, 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:
      ParserConfigurationException - if a XfdfObject cannot be created which satisfies the configuration requested.
      SAXException - if any parse errors occurs.
    • visitFNode

      private void visitFNode(Node node, XfdfObject xfdfObject)
    • visitIdsNode

      private void visitIdsNode(Node node, XfdfObject xfdfObject)
    • visitElementNode

      private void visitElementNode(Node node, XfdfObject xfdfObject)
    • visitChildNodes

      private void visitChildNodes(NodeList nList, XfdfObject xfdfObject)
    • isAnnotSupported

      private static boolean isAnnotSupported(String nodeName)
    • readAnnotsList

      private void readAnnotsList(Node node, AnnotsObject annotsObject)
    • visitAnnotationNode

      private void visitAnnotationNode(Node currentNode, AnnotsObject annotsObject)
    • visitAnnotationInnerNodes

      private void visitAnnotationInnerNodes(AnnotObject annotObject, Node annotNode, AnnotsObject annotsObject)
    • visitPopupSubelement

      private void visitPopupSubelement(Node popupNode, AnnotObject annotObject)
    • visitContentsSubelement

      private void visitContentsSubelement(Node parentNode, AnnotObject annotObject)
    • visitContentsRichTextSubelement

      private void visitContentsRichTextSubelement(Node parentNode, AnnotObject annotObject)
    • visitVerticesSubelement

      private void visitVerticesSubelement(Node parentNode, AnnotObject annotObject)
    • addAnnotObjectAttribute

      private void addAnnotObjectAttribute(AnnotObject annotObject, Node attributeNode)
    • isAnnotationSubtype

      private boolean isAnnotationSubtype(String tag)
    • readFieldList

      private void readFieldList(Node node, FieldsObject fieldsObject)
    • visitFieldElementNode

      private void visitFieldElementNode(Node node, FieldObject parentField, FieldsObject fieldsObject)
    • visitInnerFields

      private void visitInnerFields(FieldObject parentField, Node parentNode, FieldsObject fieldsObject)
    • readXfdfRootAttributes

      private List<AttributeObject> readXfdfRootAttributes(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)