Class PDFStructElem

    • Constructor Detail

      • PDFStructElem

        public PDFStructElem()
        Creates PDFStructElem with no entries.
      • PDFStructElem

        public PDFStructElem​(PDFObject parent,
                             StructureType structureType)
        Creates a new structure element.
        Parameters:
        parent - parent of this element
        structureType - the structure type of this element
      • PDFStructElem

        private PDFStructElem​(PDFObject parent)
    • Method Detail

      • getParentStructElem

        public PDFStructElem getParentStructElem()
        Returns the parent of this structure element.
        Returns:
        the parent, null if the parent is not a structure element (i.e., is the structure tree root)
      • setParent

        public void setParent​(PDFObject parent)
        Sets the direct parent object.
        Overrides:
        setParent in class PDFObject
        Parameters:
        parent - the direct parent
      • setMCIDKid

        public void setMCIDKid​(int mcid)
        Sets the given mcid as the kid of this structure element. This element will then add itself to its parent structure element if it has not already, and so will the parent, and so on.
        Parameters:
        mcid - mcid of the marked-content sequence corresponding to this structure element's kid
      • setPage

        public void setPage​(PDFPage page)
        Sets the page reference of this structure element.
        Parameters:
        page - value for the Pg entry
      • getStructureType

        public StructureType getStructureType()
        Returns the structure type of this structure element.
        Returns:
        the value of the S entry
      • setLanguage

        private void setLanguage​(java.lang.String language)
        Sets the language of this structure element.
        Parameters:
        language - the language (as defined in the section about "Natural Language Specification")
      • setLanguage

        public void setLanguage​(java.util.Locale language)
        Sets the language of this structure element.
        Parameters:
        language - a value for the Lang entry
      • getLanguage

        public java.lang.String getLanguage()
        Returns the language of this structure element.
        Returns:
        the value of the Lang entry (null if no language was specified)
      • writeDictionary

        protected void writeDictionary​(java.io.OutputStream out,
                                       java.lang.StringBuilder textBuffer)
                                throws java.io.IOException
        Description copied from class: PDFDictionary
        Writes the contents of the dictionary to a StringBuffer.
        Overrides:
        writeDictionary in class PDFDictionary
        Parameters:
        out - the OutputStream (for binary content)
        textBuffer - the text buffer for text output
        Throws:
        java.io.IOException - if an I/O error occurs
      • attachAttributes

        private void attachAttributes()
      • addKidInSpecificOrder

        public void addKidInSpecificOrder​(int position,
                                          PDFStructElem kid)
      • attachKids

        protected boolean attachKids()
        Attaches all valid kids to the kids array.
        Returns:
        true iff 1+ kids were added to the kids array
      • setTableAttributeColSpan

        public void setTableAttributeColSpan​(int colSpan)
      • setTableAttributeRowSpan

        public void setTableAttributeRowSpan​(int rowSpan)
      • setTableAttributeRowColumnSpan

        private void setTableAttributeRowColumnSpan​(java.lang.String typeSpan,
                                                    int span)
      • getKids

        public java.util.List<PDFObject> getKids()
      • output

        public int output​(java.io.OutputStream stream)
                   throws java.io.IOException
        Description copied from class: PDFDictionary
        Write the PDF represention of this object
        Specified by:
        output in interface CompressedObject
        Overrides:
        output in class PDFDictionary
        Parameters:
        stream - the stream to write the PDF to
        Returns:
        the number of bytes written
        Throws:
        java.io.IOException - if there is an error writing to the stream
      • isBSLE

        private boolean isBSLE​(java.lang.String type)