Package com.sun.pdfview.font.ttf
Class GlyfCompound
java.lang.Object
com.sun.pdfview.font.ttf.Glyf
com.sun.pdfview.font.ttf.GlyfCompound
A single simple glyph in a pdf font.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) class
The record for a single component of this compound glyph -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
flagsprivate static final int
private GlyfCompound.GlyfComponent[]
the flags for each compound glyphprivate byte[]
the instructions for the compound as a wholeprivate static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
argsAreWords
(int index) Determine whether args 1 and 2 are words or bytesboolean
argsAreXYValues
(int index) Determine whether args 1 and 2 are xy values or point indicesint
getComponentPoint
(int index) Get the point in the component glyph to matchint
getCompoundPoint
(int index) Get the point in the compound glyph to matchgetData()
Get the data in this glyf as a byte buffer.short
getFlag
(int index) Get a given flagshort
getGlyphIndex
(int index) Get the glyf index for a given glyfbyte
getInstruction
(int index) Get a given instructionshort
Get the length of this glyf.int
Get the number of components in this compoundshort
Get the number of instructionsdouble[]
getTransform
(int index) Get the base affine transform.boolean
hasAScale
(int index) Determine whether there is a simple scaleprotected boolean
hasInstructions
(int index) Determine whether there are instructionsprotected boolean
hasTwoByTwo
(int index) Determine whether there is a 2x2 transformprotected boolean
hasXYScale
(int index) Determine whether there are separate scales on X and Yprotected boolean
moreComponents
(int index) Determine whether there are more components left to readboolean
overlapCompound
(int index) This component overlaps the existing compoundboolean
roundXYToGrid
(int index) Determine whether to round XY values to the grid(package private) void
setComponents
(GlyfCompound.GlyfComponent[] components) Set the componentsvoid
setData
(ByteBuffer data) Set the data for this glyf.protected void
setInstructions
(byte[] instructions) Set the instructionsboolean
useMetrics
(int index) Use the metrics of this component for the compoundMethods inherited from class com.sun.pdfview.font.ttf.Glyf
getGlyf, getMaxX, getMaxY, getMinX, getMinY, getNumContours, isCompound, setCompound, setMaxX, setMaxY, setMinX, setMinY, setNumContours
-
Field Details
-
ARG_1_AND_2_ARE_WORDS
private static final int ARG_1_AND_2_ARE_WORDSflags- See Also:
-
ARGS_ARE_XY_VALUES
private static final int ARGS_ARE_XY_VALUES- See Also:
-
ROUND_XY_TO_GRID
private static final int ROUND_XY_TO_GRID- See Also:
-
WE_HAVE_A_SCALE
private static final int WE_HAVE_A_SCALE- See Also:
-
MORE_COMPONENTS
private static final int MORE_COMPONENTS- See Also:
-
WE_HAVE_AN_X_AND_Y_SCALE
private static final int WE_HAVE_AN_X_AND_Y_SCALE- See Also:
-
WE_HAVE_A_TWO_BY_TWO
private static final int WE_HAVE_A_TWO_BY_TWO- See Also:
-
WE_HAVE_INSTRUCTIONS
private static final int WE_HAVE_INSTRUCTIONS- See Also:
-
USE_MY_METRICS
private static final int USE_MY_METRICS- See Also:
-
OVERLAP_COMPOUND
private static final int OVERLAP_COMPOUND- See Also:
-
components
the flags for each compound glyph -
instructions
private byte[] instructionsthe instructions for the compound as a whole
-
-
Constructor Details
-
GlyfCompound
protected GlyfCompound()Creates a new instance of a simple glyf
-
-
Method Details
-
setData
Set the data for this glyf. -
getData
Get the data in this glyf as a byte buffer. Not implemented. -
getLength
public short getLength()Get the length of this glyf. Not implemented. -
getNumComponents
public int getNumComponents()Get the number of components in this compound -
getFlag
public short getFlag(int index) Get a given flag -
getGlyphIndex
public short getGlyphIndex(int index) Get the glyf index for a given glyf -
getTransform
public double[] getTransform(int index) Get the base affine transform. This is based on a whacy formula defined in the true type font spec. -
getCompoundPoint
public int getCompoundPoint(int index) Get the point in the compound glyph to match -
getComponentPoint
public int getComponentPoint(int index) Get the point in the component glyph to match -
argsAreWords
public boolean argsAreWords(int index) Determine whether args 1 and 2 are words or bytes -
argsAreXYValues
public boolean argsAreXYValues(int index) Determine whether args 1 and 2 are xy values or point indices -
roundXYToGrid
public boolean roundXYToGrid(int index) Determine whether to round XY values to the grid -
hasAScale
public boolean hasAScale(int index) Determine whether there is a simple scale -
moreComponents
protected boolean moreComponents(int index) Determine whether there are more components left to read -
hasXYScale
protected boolean hasXYScale(int index) Determine whether there are separate scales on X and Y -
hasTwoByTwo
protected boolean hasTwoByTwo(int index) Determine whether there is a 2x2 transform -
hasInstructions
protected boolean hasInstructions(int index) Determine whether there are instructions -
useMetrics
public boolean useMetrics(int index) Use the metrics of this component for the compound -
overlapCompound
public boolean overlapCompound(int index) This component overlaps the existing compound -
setComponents
Set the components -
getNumInstructions
public short getNumInstructions()Get the number of instructions -
getInstruction
public byte getInstruction(int index) Get a given instruction -
setInstructions
protected void setInstructions(byte[] instructions) Set the instructions
-