Class PdfStream

Direct Known Subclasses:
PdfFormXObject, PdfImage

public class PdfStream extends PdfDictionary
PdfStream is the Pdf stream object.

A stream, like a string, is a sequence of characters. However, an application can read a small portion of a stream at a time, while a string must be read in its entirety. For this reason, objects with potentially large amounts of data, such as images and page descriptions, are represented as streams.
A stream consists of a dictionary that describes a sequence of characters, followed by the keyword stream, followed by zero or more lines of characters, followed by the keyword endstream.
All streams must be PdfIndirectObjects. The stream dictionary must be a direct object. The keyword stream that follows the stream dictionary should be followed by a carriage return and linefeed or just a linefeed.
Remark: In this version only the FLATEDECODE-filter is supported.
This object is described in the 'Portable Document Format Reference Manual version 1.7' section 3.2.7 (page 60-63).

See Also:
  • Field Details

    • DEFAULT_COMPRESSION

      public static final int DEFAULT_COMPRESSION
      A possible compression level.
      Since:
      2.1.3
      See Also:
    • NO_COMPRESSION

      public static final int NO_COMPRESSION
      A possible compression level.
      Since:
      2.1.3
      See Also:
    • BEST_COMPRESSION

      public static final int BEST_COMPRESSION
      A possible compression level.
      Since:
      2.1.3
      See Also:
    • compressed

      protected boolean compressed
      is the stream compressed?
    • compressionLevel

      protected int compressionLevel
      The level of compression.
      Since:
      2.1.3
    • streamBytes

      protected ByteArrayOutputStream streamBytes
    • inputStream

      protected InputStream inputStream
    • ref

      protected PdfIndirectReference ref
    • inputStreamLength

      protected long inputStreamLength
    • writer

      protected PdfWriter writer
    • rawLength

      protected long rawLength
  • Constructor Details

    • PdfStream

      public PdfStream(byte[] bytes)
      Constructs a PdfStream-object.
      Parameters:
      bytes - content of the new PdfObject as an array of byte.
    • PdfStream

      protected PdfStream()
      Constructs a PdfStream-object.
  • Method Details

    • superToPdf

      protected void superToPdf(PdfWriter writer, OutputStream os) throws IOException
      Throws:
      IOException
    • writeContent

      public void writeContent(OutputStream os) throws IOException
      Writes the data content to an OutputStream.
      Parameters:
      os - the destination to write to
      Throws:
      IOException - on error
    • toString

      public String toString()
      Description copied from class: PdfDictionary
      Returns a string representation of this PdfDictionary.

      The string doesn't contain any of the content of this dictionary. Rather the string "dictionary" is returned, possibly followed by the type of this PdfDictionary, if set.

      Overrides:
      toString in class PdfDictionary
      Returns:
      the string representation of this PdfDictionary
      See Also:
    • flateCompress

      public void flateCompress(int compressionLevel)
      Compresses the stream.
      Parameters:
      compressionLevel - the compression level (0 = best speed, 9 = best compression, -1 is default)
      Since:
      2.1.3
    • toPdf

      public void toPdf(PdfWriter writer, OutputStream os) throws IOException
      Description copied from class: PdfDictionary
      Writes the PDF representation of this PdfDictionary as an array of byte to the given OutputStream.
      Overrides:
      toPdf in class PdfDictionary
      Parameters:
      writer - for backwards compatibility
      os - the OutputStream to write the bytes to.
      Throws:
      IOException - on error
      See Also: