Class PdfFormXObject

  • Direct Known Subclasses:
    SvgImageXObject

    public class PdfFormXObject
    extends PdfXObject
    A wrapper for Form XObject. ISO 32000-1, 8.10 FormXObjects.
    • Constructor Detail

      • PdfFormXObject

        public PdfFormXObject​(Rectangle bBox)
        Creates a new instance of Form XObject.
        Parameters:
        bBox - the form XObject’s bounding box.
      • PdfFormXObject

        public PdfFormXObject​(PdfPage page)
        Creates form XObject from page content. The page shall be from the document, to which FormXObject will be added.
        Parameters:
        page - an instance of PdfPage
    • Method Detail

      • calculateBBoxMultipliedByMatrix

        public static Rectangle calculateBBoxMultipliedByMatrix​(PdfFormXObject form)
        Calculates the coordinates of the xObject BBox multiplied by the Matrix field.

        For mor information see paragraph 8.10.1 in ISO-32000-1.

        Parameters:
        form - the object for which calculate the coordinates of the bBox
        Returns:
        the bBox Rectangle
      • getResources

        public PdfResources getResources()
        Gets PdfResources of the Form XObject. Note, if there is no resources, a new instance will be created.
        Returns:
        not null instance of PdfResources.
      • getWidth

        public float getWidth()
        Gets width based on XObject's BBox.
        Overrides:
        getWidth in class PdfXObject
        Returns:
        float value.
      • getHeight

        public float getHeight()
        Gets height based on XObject's BBox.
        Overrides:
        getHeight in class PdfXObject
        Returns:
        float value.
      • flush

        public void flush()
        To manually flush a PdfObject behind this wrapper, you have to ensure that this object is added to the document, i.e. it has an indirect reference. Basically this means that before flushing you need to explicitly call PdfObjectWrapper.makeIndirect(PdfDocument). For example: wrapperInstance.makeIndirect(document).flush(); Note that not every wrapper require this, only those that have such warning in documentation.
        Overrides:
        flush in class PdfObjectWrapper<PdfStream>
      • setSeparationColorNames

        public PdfFormXObject setSeparationColorNames​(PdfArray colorNames)
        Sets separation color names for the trap network appearance, PdfName.SeparationColorNames key.
        Parameters:
        colorNames - an array of names identifying the colorants that were assumed when the trap network appearance was created.
        Returns:
        object itself.
      • setTrapRegions

        public PdfFormXObject setTrapRegions​(PdfArray regions)
        Sets an array of TrapRegion objects defining the page’s trapping zones and the associated trapping parameters, as described in Adobe Technical Note #5620, Portable Job Ticket Format. PdfName.TrapRegions key.
        Parameters:
        regions - A PdfArray of indirect references to TrapRegion objects.
        Returns:
        object itself.
      • getTrapRegions

        public PdfArray getTrapRegions()
        Gets an array of TrapRegion objects defining the page’s trapping zones and the associated trapping parameters, as described in Adobe Technical Note #5620, Portable Job Ticket Format. PdfName.TrapRegions key.
        Returns:
        A PdfArray of indirect references to TrapRegion objects.
      • setTrapStyles

        public PdfFormXObject setTrapStyles​(PdfString trapStyles)
        Sets a human-readable text string that described this trap network to the user. PdfName.TrapStyles key.
        Parameters:
        trapStyles - a PdfString value.
        Returns:
        object itself.
      • getTrapStyles

        public PdfString getTrapStyles()
        Gets a human-readable text string that described this trap network to the user. PdfName.TrapStyles key.
        Returns:
        a PdfString value.
      • setMarkStyle

        public PdfFormXObject setMarkStyle​(PdfString markStyle)
        Sets a text string representing the printer’s mark in human-readable form.
        Parameters:
        markStyle - a string value.
        Returns:
        object itself.
      • getMarkStyle

        public PdfString getMarkStyle()
        Gets a text string representing the printer’s mark in human-readable form.
        Returns:
        a string value.
      • put

        public PdfFormXObject put​(PdfName key,
                                  PdfObject value)
        Puts the value into Image XObject dictionary and associates it with the specified key. If the key is already present, it will override the old value with the specified one.
        Parameters:
        key - key to insert or to override
        value - the value to associate with the specified key
        Returns:
        object itself.