Class PdfContentStreamProcessor


  • public class PdfContentStreamProcessor
    extends java.lang.Object
    Processor for a PDF content Stream.
    Since:
    2.1.4
    • Field Detail

      • DEFAULTOPERATOR

        public static final java.lang.String DEFAULTOPERATOR
        Default operator
        Since:
        5.0.1
        See Also:
        Constant Field Values
    • Constructor Detail

      • PdfContentStreamProcessor

        public PdfContentStreamProcessor​(RenderListener renderListener)
        Creates a new PDF Content Stream Processor that will send it's output to the designated render listener.
        Parameters:
        renderListener - the RenderListener that will receive rendering notifications
    • Method Detail

      • registerXObjectDoHandler

        public XObjectDoHandler registerXObjectDoHandler​(PdfName xobjectSubType,
                                                         XObjectDoHandler handler)
        Registers a Do handler that will be called when Do for the provided XObject subtype is encountered during content processing.
        If you register a handler, it is a very good idea to pass the call on to the existing registered handler (returned by this call), otherwise you may inadvertently change the internal behavior of the processor.
        Parameters:
        xobjectSubType - the XObject subtype this handler will process, or PdfName.DEFAULT for a catch-all handler
        handler - the handler that will receive notification when the Do operator for the specified subtype is encountered
        Returns:
        the existing registered handler, if any
        Since:
        5.0.1
      • registerContentOperator

        public ContentOperator registerContentOperator​(java.lang.String operatorString,
                                                       ContentOperator operator)
        Registers a content operator that will be called when the specified operator string is encountered during content processing.
        If you register an operator, it is a very good idea to pass the call on to the existing registered operator (returned by this call), otherwise you may inadvertently change the internal behavior of the processor.
        Parameters:
        operatorString - the operator id, or DEFAULTOPERATOR for a catch-all operator
        operator - the operator that will receive notification when the operator is encountered
        Returns:
        the existing registered operator, if any
        Since:
        2.1.7
      • getRegisteredOperatorStrings

        public java.util.Collection<java.lang.String> getRegisteredOperatorStrings()
        Returns:
        Collection containing all the registered operators strings
        Since:
        5.5.6
      • reset

        public void reset()
        Resets the graphics state stack, matrices and resources.
      • gs

        public GraphicsState gs()
        Returns the current graphics state.
        Returns:
        the graphics state
      • processContent

        public void processContent​(byte[] contentBytes,
                                   PdfDictionary resources)
        Processes PDF syntax. Note: If you re-use a given PdfContentStreamProcessor, you must call reset()
        Parameters:
        contentBytes - the bytes of a content stream
        resources - the resources that come with the content stream
      • handleInlineImage

        protected void handleInlineImage​(InlineImageInfo info,
                                         PdfDictionary colorSpaceDic)
        Callback when an inline image is found. This requires special handling because inline images don't follow the standard operator syntax
        Parameters:
        info - the inline image
        colorSpaceDic - the color space for the inline immage
      • getRenderListener

        public RenderListener getRenderListener()
        Accessor method for the RenderListener object maintained in this class. Necessary for implementing custom ContentOperator implementations.
        Returns:
        the renderListener