public abstract class PDFStreamEngine extends Object
| Modifier | Constructor and Description |
|---|---|
protected |
PDFStreamEngine()
Creates a new PDFStreamEngine.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addOperator(OperatorProcessor op)
Adds an operator processor to the engine.
|
protected void |
applyTextAdjustment(float tx,
float ty)
Applies a text position adjustment from the TJ operator.
|
void |
beginText()
Called when the BT operator is encountered.
|
void |
endText()
Called when the ET operator is encountered.
|
PDAppearanceStream |
getAppearance(PDAnnotation annotation)
Returns the appearance stream to process for the given annotation.
|
PDPage |
getCurrentPage() |
int |
getGraphicsStackSize() |
PDGraphicsState |
getGraphicsState() |
Matrix |
getInitialMatrix()
Gets the stream's initial matrix.
|
PDResources |
getResources() |
Matrix |
getTextLineMatrix() |
Matrix |
getTextMatrix() |
protected void |
operatorException(Operator operator,
List<COSBase> operands,
IOException e)
Called when an exception is thrown by an operator.
|
protected void |
processAnnotation(PDAnnotation annotation,
PDAppearanceStream appearance)
Process the given annotation with the specified appearance stream.
|
protected void |
processChildStream(PDContentStream contentStream,
PDPage page)
Process a child stream of the given page.
|
protected void |
processOperator(Operator operator,
List<COSBase> operands)
This is used to handle an operation.
|
void |
processOperator(String operation,
List<COSBase> arguments)
This is used to handle an operation.
|
void |
processPage(PDPage page)
This will initialise and process the contents of the stream.
|
protected void |
processSoftMask(PDTransparencyGroup group)
Processes a soft mask transparency group stream.
|
protected void |
processTilingPattern(PDTilingPattern tilingPattern,
PDColor color,
PDColorSpace colorSpace)
Process the given tiling pattern.
|
protected void |
processTilingPattern(PDTilingPattern tilingPattern,
PDColor color,
PDColorSpace colorSpace,
Matrix patternMatrix)
Process the given tiling pattern.
|
protected void |
processTransparencyGroup(PDTransparencyGroup group)
Processes a transparency group stream.
|
protected void |
processType3Stream(PDType3CharProc charProc,
Matrix textRenderingMatrix)
Processes a Type 3 character stream.
|
void |
registerOperatorProcessor(String operator,
OperatorProcessor op)
Deprecated.
Use
addOperator(OperatorProcessor) instead |
protected void |
restoreGraphicsStack(Stack<PDGraphicsState> snapshot)
Restores the entire graphics stack.
|
void |
restoreGraphicsState()
Pops the current graphics state from the stack.
|
protected Stack<PDGraphicsState> |
saveGraphicsStack()
Saves the entire graphics stack.
|
void |
saveGraphicsState()
Pushes the current graphics state to the stack.
|
void |
setLineDashPattern(COSArray array,
int phase) |
void |
setTextLineMatrix(Matrix value) |
void |
setTextMatrix(Matrix value) |
void |
showAnnotation(PDAnnotation annotation)
Shows the given annotation.
|
protected void |
showFontGlyph(Matrix textRenderingMatrix,
PDFont font,
int code,
String unicode,
Vector displacement)
Called when a glyph is to be processed.This method is intended for overriding in subclasses,
the default implementation does nothing.
|
void |
showForm(PDFormXObject form)
Shows a form from the content stream.
|
protected void |
showGlyph(Matrix textRenderingMatrix,
PDFont font,
int code,
String unicode,
Vector displacement)
Called when a glyph is to be processed.This method is intended for overriding in subclasses,
the default implementation does nothing.
|
protected void |
showText(byte[] string)
Process text from the PDF Stream.
|
void |
showTextString(byte[] string)
Called when a string of text is to be shown.
|
void |
showTextStrings(COSArray array)
Called when a string of text with spacing adjustments is to be shown.
|
void |
showTransparencyGroup(PDTransparencyGroup form)
Shows a transparency group from the content stream.
|
protected void |
showType3Glyph(Matrix textRenderingMatrix,
PDType3Font font,
int code,
String unicode,
Vector displacement)
Called when a glyph is to be processed.This method is intended for overriding in subclasses,
the default implementation does nothing.
|
Point2D.Float |
transformedPoint(float x,
float y)
Transforms a point using the CTM.
|
protected float |
transformWidth(float width)
Transforms a width using the CTM.
|
protected void |
unsupportedOperator(Operator operator,
List<COSBase> operands)
Called when an unsupported operator is encountered.
|
@Deprecated public void registerOperatorProcessor(String operator, OperatorProcessor op)
addOperator(OperatorProcessor) insteadoperator - The operator as a string.op - Processor instance.public final void addOperator(OperatorProcessor op)
op - operator processorpublic void processPage(PDPage page) throws IOException
page - the page to processIOException - if there is an error accessing the streampublic void showTransparencyGroup(PDTransparencyGroup form) throws IOException
form - transparency group (form) XObjectIOException - if the transparency group cannot be processedpublic void showForm(PDFormXObject form) throws IOException
form - form XObjectIOException - if the form cannot be processedprotected void processSoftMask(PDTransparencyGroup group) throws IOException
group - the transparency group.IOExceptionprotected void processTransparencyGroup(PDTransparencyGroup group) throws IOException
group - the transparency group.IOExceptionprotected void processType3Stream(PDType3CharProc charProc, Matrix textRenderingMatrix) throws IOException
charProc - Type 3 character proceduretextRenderingMatrix - the Text Rendering MatrixIOException - if there is an error reading or parsing the character content stream.protected void processAnnotation(PDAnnotation annotation, PDAppearanceStream appearance) throws IOException
annotation - The annotation containing the appearance stream to process.appearance - The appearance stream to process.IOException - If there is an error reading or parsing the appearance content stream.protected final void processTilingPattern(PDTilingPattern tilingPattern, PDColor color, PDColorSpace colorSpace) throws IOException
tilingPattern - the tiling patterncolor - color to use, if this is an uncoloured pattern, otherwise null.colorSpace - color space to use, if this is an uncoloured pattern, otherwise null.IOException - if there is an error reading or parsing the tiling pattern content stream.protected final void processTilingPattern(PDTilingPattern tilingPattern, PDColor color, PDColorSpace colorSpace, Matrix patternMatrix) throws IOException
tilingPattern - the tiling patterncolor - color to use, if this is an uncoloured pattern, otherwise null.colorSpace - color space to use, if this is an uncoloured pattern, otherwise null.patternMatrix - the pattern matrix, may be overridden for custom rendering.IOException - if there is an error reading or parsing the tiling pattern content stream.public void showAnnotation(PDAnnotation annotation) throws IOException
annotation - An annotation on the current page.IOException - If an error occurred reading the annotationpublic PDAppearanceStream getAppearance(PDAnnotation annotation)
annotation - The current annotation.protected void processChildStream(PDContentStream contentStream, PDPage page) throws IOException
processPage(PDPage).contentStream - the child content streampage - the current pageIOException - if there is an exception while processing the streampublic void beginText()
throws IOException
IOException - if there was an error processing the textpublic void endText()
throws IOException
IOException - if there was an error processing the textpublic void showTextString(byte[] string)
throws IOException
string - the encoded textIOException - if there was an error showing the textpublic void showTextStrings(COSArray array) throws IOException
array - array of encoded text strings and adjustmentsIOException - if there was an error showing the textprotected void applyTextAdjustment(float tx,
float ty)
throws IOException
tx - x-translationty - y-translationIOException - if something went wrongprotected void showText(byte[] string)
throws IOException
string - the encoded textIOException - if there is an error processing the stringprotected void showGlyph(Matrix textRenderingMatrix, PDFont font, int code, String unicode, Vector displacement) throws IOException
textRenderingMatrix - the current text rendering matrix, Trmfont - the current fontcode - internal PDF character code for the glyphunicode - the Unicode text for this glyph, or null if the PDF does provide itdisplacement - the displacement (i.e. advance) of the glyph in text spaceIOException - if the glyph cannot be processedprotected void showFontGlyph(Matrix textRenderingMatrix, PDFont font, int code, String unicode, Vector displacement) throws IOException
textRenderingMatrix - the current text rendering matrix, Trmfont - the current fontcode - internal PDF character code for the glyphunicode - the Unicode text for this glyph, or null if the PDF does provide itdisplacement - the displacement (i.e. advance) of the glyph in text spaceIOException - if the glyph cannot be processedprotected void showType3Glyph(Matrix textRenderingMatrix, PDType3Font font, int code, String unicode, Vector displacement) throws IOException
textRenderingMatrix - the current text rendering matrix, Trmfont - the current fontcode - internal PDF character code for the glyphunicode - the Unicode text for this glyph, or null if the PDF does provide itdisplacement - the displacement (i.e. advance) of the glyph in text spaceIOException - if the glyph cannot be processedpublic void processOperator(String operation, List<COSBase> arguments) throws IOException
operation - The operation to perform.arguments - The list of arguments.IOException - If there is an error processing the operation.protected void processOperator(Operator operator, List<COSBase> operands) throws IOException
operator - The operation to perform.operands - The list of arguments.IOException - If there is an error processing the operation.protected void unsupportedOperator(Operator operator, List<COSBase> operands) throws IOException
operator - The unknown operator.operands - The list of operands.IOException - if something went wrongprotected void operatorException(Operator operator, List<COSBase> operands, IOException e) throws IOException
operator - The unknown operator.operands - The list of operands.e - the thrown exception.IOException - if something went wrongpublic void saveGraphicsState()
public void restoreGraphicsState()
protected final Stack<PDGraphicsState> saveGraphicsStack()
protected final void restoreGraphicsStack(Stack<PDGraphicsState> snapshot)
snapshot - the graphics state stack to be restored.public int getGraphicsStackSize()
public PDGraphicsState getGraphicsState()
public Matrix getTextLineMatrix()
public void setTextLineMatrix(Matrix value)
value - The textLineMatrix to set.public Matrix getTextMatrix()
public void setTextMatrix(Matrix value)
value - The textMatrix to set.public void setLineDashPattern(COSArray array, int phase)
array - dash arrayphase - dash phasepublic PDResources getResources()
public PDPage getCurrentPage()
public Matrix getInitialMatrix()
public Point2D.Float transformedPoint(float x, float y)
x - x-coordinate of the point to be transformed.y - y-coordinate of the point to be transformed.protected float transformWidth(float width)
width - the width value to be transformed.Copyright © 2002–2018 The Apache Software Foundation. All rights reserved.