org.apache.fop.pdf

## Class PDFT1Stream

- java.lang.Object
- - org.apache.fop.pdf.PDFObject
  - - org.apache.fop.pdf.AbstractPDFStream
    - - org.apache.fop.pdf.AbstractPDFFontStream
      - - org.apache.fop.pdf.PDFT1Stream

All Implemented Interfaces:
  PDFWritable

    public class PDFT1Stream
    extends AbstractPDFFontStream

Special PDFStream for embedding Type 1 fonts.

### Field Summary

### Fields inherited from class org.apache.fop.pdf.PDFObject

`log`

### Constructor Summary

Constructors
Constructor and Description
`PDFT1Stream()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected int` `getSizeHint()` Returns a value that hints at the size of the encoded stream.
`int` `output(OutputStream stream)` Overload the base object method so we don't have to copy byte arrays around so much Overload the base object method so we don't have to copy byte arrays around so much Write the PDF represention of this object
`protected void` `outputRawStreamData(OutputStream out)` Sends the raw stream data to the target OutputStream.
`protected void` `populateStreamDict(Object lengthEntry)` Populates the dictionary with all necessary entries for the stream.
`void` `setData(PFBData pfb)` Used to set the PFBData object that represents the embeddable Type 1 font.

### Methods inherited from class org.apache.fop.pdf.AbstractPDFFontStream

`getDefaultFilterName`

### Methods inherited from class org.apache.fop.pdf.AbstractPDFStream

`encodeAndWriteStream, encodeStream, get, getChildren, getDictionary, getFilterList, multipleFiltersAllowed, outputStreamData, prepareImplicitFilters, put, registerChildren, setDocument, setupFilterList, supportsObjectStream`

### Methods inherited from class org.apache.fop.pdf.PDFObject

`contentEquals, encode, encodeBinaryToHexString, encodeString, encodeText, formatObject, getDocument, getDocumentSafely, getGeneration, getObjectID, getObjectNumber, getParent, hasObjectNumber, makeReference, outputInline, referencePDF, setObjectNumber, setObjectNumber, setObjectNumber, setParent, toPDF, toPDFString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### PDFT1Stream

    public PDFT1Stream()

### Method Detail

#### getSizeHint

    protected int getSizeHint()
                       throws 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:
  `IOException` - in case of an I/O problem

#### output

    public int output(OutputStream stream)
               throws IOException

Overload the base object method so we don't have to copy byte arrays around so much 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:
  `IOException` - if there is an error writing to the stream

#### populateStreamDict

    protected void populateStreamDict(Object lengthEntry)

Populates the dictionary with all necessary entries for the stream. Override this method if you need additional entries.

Overrides:
  `populateStreamDict` in class `AbstractPDFStream`
Parameters:
  `lengthEntry` - value for the /Length entry

#### outputRawStreamData

    protected void outputRawStreamData(OutputStream out)
                                throws IOException

Sends the raw stream data to the target OutputStream.

Specified by:
  `outputRawStreamData` in class `AbstractPDFStream`
Parameters:
  `out` - OutputStream to write to
Throws:
  `IOException` - In case of an I/O problem

#### setData

    public void setData(PFBData pfb)
                 throws IOException

Used to set the PFBData object that represents the embeddable Type 1 font.

Parameters:
  `pfb` - The PFB file
Throws:
  `IOException` - in case of an I/O problem