Class PDFStream

    • Field Detail

      • data

        protected StreamCache data
        The stream of PDF commands
      • streamWriter

        private transient java.io.Writer streamWriter
      • charBuffer

        private transient char[] charBuffer
    • Constructor Detail

      • PDFStream

        public PDFStream()
        Create an empty stream object
      • PDFStream

        public PDFStream​(PDFDictionary dictionary,
                         boolean encodeOnTheFly)
      • PDFStream

        public PDFStream​(boolean encodeOnTheFly)
    • Method Detail

      • setUp

        private void setUp()
      • add

        public void add​(java.lang.String s)
        Append data to the stream
        Parameters:
        s - the string of PDF to add
      • add

        public void add​(java.lang.StringBuffer sb)
        Append data to the stream
        Parameters:
        sb - the string buffer of PDF to add
      • flush

        private void flush()
                    throws java.io.IOException
        Throws:
        java.io.IOException
      • getBufferWriter

        public java.io.Writer getBufferWriter()
        Returns a Writer that writes to the OutputStream of the buffer.
        Returns:
        the Writer
      • getBufferOutputStream

        public java.io.OutputStream getBufferOutputStream()
                                                   throws java.io.IOException
        Returns an OutputStream that can be used to write to the buffer which is used to build up the PDF stream.
        Returns:
        the OutputStream
        Throws:
        java.io.IOException - In case of an I/O problem
      • setData

        public void setData​(byte[] data)
                     throws java.io.IOException
        Used to set the contents of the PDF stream.
        Parameters:
        data - the contents as a byte array
        Throws:
        java.io.IOException - in case of an I/O problem
      • getDataLength

        public int getDataLength()
        Returns the size of the content.
        Returns:
        size of the content
      • getSizeHint

        protected int getSizeHint()
                           throws java.io.IOException
        Returns a value that hints at the size of the encoded stream. This is used to optimize buffer allocation so fewer buffer reallocations are necessary.
        Specified by:
        getSizeHint in class AbstractPDFStream
        Returns:
        an estimated size (0 if no hint can be given)
        Throws:
        java.io.IOException - in case of an I/O problem
      • outputRawStreamData

        protected void outputRawStreamData​(java.io.OutputStream out)
                                    throws java.io.IOException
        Sends the raw stream data to the target OutputStream.
        Specified by:
        outputRawStreamData in class AbstractPDFStream
        Parameters:
        out - OutputStream to write to
        Throws:
        java.io.IOException - In case of an I/O problem
      • output

        public int output​(java.io.OutputStream stream)
                   throws java.io.IOException
        Overload the base object method so we don't have to copy byte arrays around so much Write the PDF represention of this object
        Overrides:
        output in class AbstractPDFStream
        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
      • streamHashCode

        public java.lang.String streamHashCode()
                                        throws java.io.IOException
        Throws:
        java.io.IOException