Package com.tom_roush.fontbox.type1
Class Type1Font
- java.lang.Object
-
- com.tom_roush.fontbox.type1.Type1Font
-
- All Implemented Interfaces:
EncodedFont,FontBoxFont,Type1CharStringReader
public final class Type1Font extends Object implements Type1CharStringReader, EncodedFont, FontBoxFont
Represents an Adobe Type 1 (.pfb) font. Thread safe.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Type1FontcreateWithPFB(byte[] pfbBytes)Constructs a new Type1Font object from a .pfb stream.static Type1FontcreateWithPFB(InputStream pfbStream)Constructs a new Type1Font object from a .pfb stream.static Type1FontcreateWithSegments(byte[] segment1, byte[] segment2)Constructs a new Type1Font object from two header-less .pfb segments.byte[]getASCIISegment()Returns the ASCII segment.byte[]getBinarySegment()Returns the binary segment.intgetBlueFuzz()Returns the blue fuzz.floatgetBlueScale()Returns the blue scale.intgetBlueShift()Returns the blue shift.List<Number>getBlueValues()Returns the blues values.Map<String,byte[]>getCharStringsDict()Returns the /CharStrings dictionary as raw bytes.EncodinggetEncoding()Returns the Encoding, if present.List<Number>getFamilyBlues()Returns the family blues values.StringgetFamilyName()Returns the family name.List<Number>getFamilyOtherBlues()Returns the other family blues values.BoundingBoxgetFontBBox()Returns the font bounding box.StringgetFontID()Returns the font ID.List<Number>getFontMatrix()Returns the font matrix.StringgetFontName()Returns the font name.intgetFontType()Returns the font type.StringgetFullName()Returns the full name.floatgetItalicAngle()Returns the italic angle.intgetLanguageGroup()Returns the language group.StringgetName()The PostScript name of the font.StringgetNotice()Returns the notice.List<Number>getOtherBlues()Returns the other blues values.intgetPaintType()Returns the paint type.PathgetPath(String name)Returns the path for the character with the given name.List<Number>getStdHW()Returns the StdHW value.List<Number>getStdVW()Returns the StdVW value.List<Number>getStemSnapH()Returns the StemSnapH value.List<Number>getStemSnapV()Returns the StemSnapV value.floatgetStrokeWidth()Returns the stroke width.List<byte[]>getSubrsArray()Returns the /Subrs array as raw bytes.Type1CharStringgetType1CharString(String name)Returns the Type 1 CharString for the character with the given name.floatgetUnderlinePosition()Returns the underline positionfloatgetUnderlineThickness()Returns the underline thickness.intgetUniqueID()Returns unique ID.StringgetVersion()Returns the version.StringgetWeight()Returns the weight.floatgetWidth(String name)Returns the advance width for the character with the given name.booleanhasGlyph(String name)Returns true if the font contains the given glyph.booleanisFixedPitch()Determines if the font has a fixed pitch.booleanisForceBold()Determines if the font is bold.StringtoString()
-
-
-
Method Detail
-
createWithPFB
public static Type1Font createWithPFB(InputStream pfbStream) throws IOException
Constructs a new Type1Font object from a .pfb stream.- Parameters:
pfbStream- .pfb input stream, including headers- Returns:
- a type1 font
- Throws:
IOException- if something went wrong
-
createWithPFB
public static Type1Font createWithPFB(byte[] pfbBytes) throws IOException
Constructs a new Type1Font object from a .pfb stream.- Parameters:
pfbBytes- .pfb data, including headers- Returns:
- a type1 font
- Throws:
IOException- if something went wrong
-
createWithSegments
public static Type1Font createWithSegments(byte[] segment1, byte[] segment2) throws IOException
Constructs a new Type1Font object from two header-less .pfb segments.- Parameters:
segment1- The first segment, without headersegment2- The second segment, without header- Returns:
- A new Type1Font instance
- Throws:
IOException- if something went wrong
-
getSubrsArray
public List<byte[]> getSubrsArray()
Returns the /Subrs array as raw bytes.- Returns:
- Type 1 char string bytes
-
getCharStringsDict
public Map<String,byte[]> getCharStringsDict()
Returns the /CharStrings dictionary as raw bytes.- Returns:
- Type 1 char string bytes
-
getName
public String getName()
Description copied from interface:FontBoxFontThe PostScript name of the font.- Specified by:
getNamein interfaceFontBoxFont
-
getPath
public Path getPath(String name) throws IOException
Description copied from interface:FontBoxFontReturns the path for the character with the given name.- Specified by:
getPathin interfaceFontBoxFont- Returns:
- glyph path
- Throws:
IOException- if the path could not be read
-
getWidth
public float getWidth(String name) throws IOException
Description copied from interface:FontBoxFontReturns the advance width for the character with the given name.- Specified by:
getWidthin interfaceFontBoxFont- Returns:
- glyph advance width
- Throws:
IOException- if the path could not be read
-
hasGlyph
public boolean hasGlyph(String name)
Description copied from interface:FontBoxFontReturns true if the font contains the given glyph.- Specified by:
hasGlyphin interfaceFontBoxFont- Parameters:
name- PostScript glyph name
-
getType1CharString
public Type1CharString getType1CharString(String name) throws IOException
Description copied from interface:Type1CharStringReaderReturns the Type 1 CharString for the character with the given name.- Specified by:
getType1CharStringin interfaceType1CharStringReader- Returns:
- Type 1 CharString
- Throws:
IOException- if something went wrong
-
getFontName
public String getFontName()
Returns the font name.- Returns:
- the font name
-
getEncoding
public Encoding getEncoding()
Returns the Encoding, if present.- Specified by:
getEncodingin interfaceEncodedFont- Returns:
- the encoding or null
-
getPaintType
public int getPaintType()
Returns the paint type.- Returns:
- the paint type
-
getFontType
public int getFontType()
Returns the font type.- Returns:
- the font type
-
getFontMatrix
public List<Number> getFontMatrix()
Returns the font matrix.- Specified by:
getFontMatrixin interfaceFontBoxFont- Returns:
- the font matrix
-
getFontBBox
public BoundingBox getFontBBox()
Returns the font bounding box.- Specified by:
getFontBBoxin interfaceFontBoxFont- Returns:
- the font bounding box
-
getUniqueID
public int getUniqueID()
Returns unique ID.- Returns:
- the unique ID
-
getStrokeWidth
public float getStrokeWidth()
Returns the stroke width.- Returns:
- the stroke width
-
getFontID
public String getFontID()
Returns the font ID.- Returns:
- the font ID
-
getVersion
public String getVersion()
Returns the version.- Returns:
- the version
-
getNotice
public String getNotice()
Returns the notice.- Returns:
- the notice
-
getFullName
public String getFullName()
Returns the full name.- Returns:
- the full name
-
getFamilyName
public String getFamilyName()
Returns the family name.- Returns:
- the family name
-
getWeight
public String getWeight()
Returns the weight.- Returns:
- the weight
-
getItalicAngle
public float getItalicAngle()
Returns the italic angle.- Returns:
- the italic angle
-
isFixedPitch
public boolean isFixedPitch()
Determines if the font has a fixed pitch.- Returns:
- true if the font has a fixed pitch
-
getUnderlinePosition
public float getUnderlinePosition()
Returns the underline position- Returns:
- the underline position
-
getUnderlineThickness
public float getUnderlineThickness()
Returns the underline thickness.- Returns:
- the underline thickness
-
getBlueValues
public List<Number> getBlueValues()
Returns the blues values.- Returns:
- the blues values
-
getOtherBlues
public List<Number> getOtherBlues()
Returns the other blues values.- Returns:
- the other blues values
-
getFamilyBlues
public List<Number> getFamilyBlues()
Returns the family blues values.- Returns:
- the family blues values
-
getFamilyOtherBlues
public List<Number> getFamilyOtherBlues()
Returns the other family blues values.- Returns:
- the other family blues values
-
getBlueScale
public float getBlueScale()
Returns the blue scale.- Returns:
- the blue scale
-
getBlueShift
public int getBlueShift()
Returns the blue shift.- Returns:
- the blue shift
-
getBlueFuzz
public int getBlueFuzz()
Returns the blue fuzz.- Returns:
- the blue fuzz
-
getStemSnapH
public List<Number> getStemSnapH()
Returns the StemSnapH value.- Returns:
- the StemSnapH value
-
getStemSnapV
public List<Number> getStemSnapV()
Returns the StemSnapV value.- Returns:
- the StemSnapV value
-
isForceBold
public boolean isForceBold()
Determines if the font is bold.- Returns:
- true if the font is bold
-
getLanguageGroup
public int getLanguageGroup()
Returns the language group.- Returns:
- the language group
-
getASCIISegment
public byte[] getASCIISegment()
Returns the ASCII segment.- Returns:
- the ASCII segment.
-
getBinarySegment
public byte[] getBinarySegment()
Returns the binary segment.- Returns:
- the binary segment.
-
-