com.lowagie.text.pdf
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 PdfIndirectObject
s. 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.3'
section 4.8 (page 41-53).
See Also: PdfObject PdfDictionary
Field Summary | |
---|---|
protected boolean | compressed is the stream compressed? |
static byte[] | ENDSTREAM |
protected InputStream | inputStream |
protected int | inputStreamLength |
protected int | rawLength |
protected PdfIndirectReference | ref |
protected ByteArrayOutputStream | streamBytes |
static int | SIZESTREAM |
static byte[] | STARTSTREAM |
protected PdfWriter | writer |
Constructor Summary | |
---|---|
PdfStream(byte[] bytes)
Constructs a PdfStream -object.
| |
PdfStream(InputStream inputStream, PdfWriter writer)
Creates an efficient stream. | |
protected | PdfStream()
Constructs a PdfStream -object. |
Method Summary | |
---|---|
void | flateCompress()
Compresses the stream. |
int | getRawLength()
Gets the raw length of the stream. |
protected void | superToPdf(PdfWriter writer, OutputStream os) |
void | toPdf(PdfWriter writer, OutputStream os) |
void | writeContent(OutputStream os)
Writes the data content to an OutputStream . |
void | writeLength()
Writes the stream length to the PdfWriter .
|
PdfStream
-object.
Parameters: bytes content of the new PdfObject
as an array of byte
.
InputStream
is totally consumed but is not closed. The general usage is:
InputStream in = ...; PdfStream stream = new PdfStream(in, writer); stream.flateCompress(); writer.addToBody(stream); stream.writeLength(); in.close();
Parameters: inputStream the data to write to this stream writer the PdfWriter
for this stream
PdfStream
-object.Returns: the raw length of the stream
See Also: PdfDictionary
OutputStream
.Parameters: os the destination to write to
Throws: IOException on error