org.apache.fontbox.afm
Class AFMParser

java.lang.Object
  extended by org.apache.fontbox.afm.AFMParser

public class AFMParser
extends java.lang.Object

This class is used to parse AFM(Adobe Font Metrics) documents.

Version:
$Revision: 1.1 $
Author:
Ben Litchfield (ben@benlitchfield.com)
See Also:
AFM Documentation

Field Summary
static java.lang.String ASCENDER
          This is ascender attribute.
static java.lang.String CAP_HEIGHT
          This is the cap height attribute.
static java.lang.String CC
          This is a composite character.
static java.lang.String CHAR_WIDTH
          This is the char width.
static java.lang.String CHARACTER_SET
          This is the character set.
static java.lang.String CHARACTERS
          This is the characters attribute.
static java.lang.String CHARMETRICS_B
          The character metrics value.
static java.lang.String CHARMETRICS_C
          The character metrics c value.
static java.lang.String CHARMETRICS_CH
          The character metrics c value.
static java.lang.String CHARMETRICS_L
          The character metrics value.
static java.lang.String CHARMETRICS_N
          The character metrics value.
static java.lang.String CHARMETRICS_VV
          The character metrics value.
static java.lang.String CHARMETRICS_W
          The character metrics value.
static java.lang.String CHARMETRICS_W0
          The character metrics value.
static java.lang.String CHARMETRICS_W0X
          The character metrics value.
static java.lang.String CHARMETRICS_W0Y
          The character metrics value.
static java.lang.String CHARMETRICS_W1
          The character metrics value.
static java.lang.String CHARMETRICS_W1X
          The character metrics value.
static java.lang.String CHARMETRICS_W1Y
          The character metrics value.
static java.lang.String CHARMETRICS_WX
          The character metrics value.
static java.lang.String CHARMETRICS_WY
          The character metrics value.
static java.lang.String COMMENT
          This is a comment in a AFM file.
static java.lang.String DESCENDER
          This is the descender attribute.
static java.lang.String ENCODING_SCHEME
          This is the encoding scheme.
static java.lang.String END_CHAR_METRICS
          This is the end of character metrics.
static java.lang.String END_COMPOSITES
          This is the end compisites data section.
static java.lang.String END_FONT_METRICS
          This is the constant used in the AFM file to end a font metrics item.
static java.lang.String END_KERN_DATA
          This is the end of kern data.
static java.lang.String END_KERN_PAIRS
          This is the end of kern pairs data.
static java.lang.String END_TRACK_KERN
          This is the end of track kern data.
static java.lang.String ESC_CHAR
          This is the escape character.
static java.lang.String FAMILY_NAME
          This is the Family name.
static java.lang.String FONT_BBOX
          This is the font bounding box.
static java.lang.String FONT_NAME
          This is the font name.
static java.lang.String FULL_NAME
          This is the full name.
static java.lang.String IS_BASE_FONT
          This will determine if this is a base font.
static java.lang.String IS_FIXED_PITCH
          This will determine if this is fixed pitch.
static java.lang.String IS_FIXED_V
          This will tell if the V is fixed.
static java.lang.String ITALIC_ANGLE
          This is the italic angle.
static java.lang.String KERN_PAIR_KP
          This is a kern pair.
static java.lang.String KERN_PAIR_KPH
          This is a kern pair.
static java.lang.String KERN_PAIR_KPX
          This is a kern pair.
static java.lang.String KERN_PAIR_KPY
          This is a kern pair.
static java.lang.String MAPPING_SCHEME
          This is the mapping scheme.
static java.lang.String NOTICE
          This is the notice.
static java.lang.String PCC
          This is a composite charater part.
static java.lang.String START_CHAR_METRICS
          This is the start of character metrics.
static java.lang.String START_COMPOSITES
          This is the start compisites data section.
static java.lang.String START_FONT_METRICS
          This is the constant used in the AFM file to start a font metrics item.
static java.lang.String START_KERN_DATA
          This is the start of kern data.
static java.lang.String START_KERN_PAIRS
          This is the start of kern pairs data.
static java.lang.String START_KERN_PAIRS0
          This is the start of kern pairs data.
static java.lang.String START_KERN_PAIRS1
          This is the start of kern pairs data.
static java.lang.String START_TRACK_KERN
          This is the start of track kern data.
static java.lang.String STD_HW
          The character metrics value.
static java.lang.String STD_VW
          The character metrics value.
static java.lang.String UNDERLINE_POSITION
          The underline position.
static java.lang.String UNDERLINE_THICKNESS
          This is the Underline thickness.
static java.lang.String V_VECTOR
          This is the V Vector attribute.
static java.lang.String VERSION
          This is the version of the font.
static java.lang.String WEIGHT
          This is the weight.
static java.lang.String X_HEIGHT
          This is the X height.
 
Constructor Summary
AFMParser(java.io.InputStream in)
          Constructor.
 
Method Summary
 FontMetric getResult()
          This will get the result of the parsing.
static void main(java.lang.String[] args)
          A method to test parsing of all AFM documents in the resources directory.
 void parse()
          This will parse the AFM document.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMMENT

public static final java.lang.String COMMENT
This is a comment in a AFM file.

See Also:
Constant Field Values

START_FONT_METRICS

public static final java.lang.String START_FONT_METRICS
This is the constant used in the AFM file to start a font metrics item.

See Also:
Constant Field Values

END_FONT_METRICS

public static final java.lang.String END_FONT_METRICS
This is the constant used in the AFM file to end a font metrics item.

See Also:
Constant Field Values

FONT_NAME

public static final java.lang.String FONT_NAME
This is the font name.

See Also:
Constant Field Values

FULL_NAME

public static final java.lang.String FULL_NAME
This is the full name.

See Also:
Constant Field Values

FAMILY_NAME

public static final java.lang.String FAMILY_NAME
This is the Family name.

See Also:
Constant Field Values

WEIGHT

public static final java.lang.String WEIGHT
This is the weight.

See Also:
Constant Field Values

FONT_BBOX

public static final java.lang.String FONT_BBOX
This is the font bounding box.

See Also:
Constant Field Values

VERSION

public static final java.lang.String VERSION
This is the version of the font.

See Also:
Constant Field Values

NOTICE

public static final java.lang.String NOTICE
This is the notice.

See Also:
Constant Field Values

ENCODING_SCHEME

public static final java.lang.String ENCODING_SCHEME
This is the encoding scheme.

See Also:
Constant Field Values

MAPPING_SCHEME

public static final java.lang.String MAPPING_SCHEME
This is the mapping scheme.

See Also:
Constant Field Values

ESC_CHAR

public static final java.lang.String ESC_CHAR
This is the escape character.

See Also:
Constant Field Values

CHARACTER_SET

public static final java.lang.String CHARACTER_SET
This is the character set.

See Also:
Constant Field Values

CHARACTERS

public static final java.lang.String CHARACTERS
This is the characters attribute.

See Also:
Constant Field Values

IS_BASE_FONT

public static final java.lang.String IS_BASE_FONT
This will determine if this is a base font.

See Also:
Constant Field Values

V_VECTOR

public static final java.lang.String V_VECTOR
This is the V Vector attribute.

See Also:
Constant Field Values

IS_FIXED_V

public static final java.lang.String IS_FIXED_V
This will tell if the V is fixed.

See Also:
Constant Field Values

CAP_HEIGHT

public static final java.lang.String CAP_HEIGHT
This is the cap height attribute.

See Also:
Constant Field Values

X_HEIGHT

public static final java.lang.String X_HEIGHT
This is the X height.

See Also:
Constant Field Values

ASCENDER

public static final java.lang.String ASCENDER
This is ascender attribute.

See Also:
Constant Field Values

DESCENDER

public static final java.lang.String DESCENDER
This is the descender attribute.

See Also:
Constant Field Values

UNDERLINE_POSITION

public static final java.lang.String UNDERLINE_POSITION
The underline position.

See Also:
Constant Field Values

UNDERLINE_THICKNESS

public static final java.lang.String UNDERLINE_THICKNESS
This is the Underline thickness.

See Also:
Constant Field Values

ITALIC_ANGLE

public static final java.lang.String ITALIC_ANGLE
This is the italic angle.

See Also:
Constant Field Values

CHAR_WIDTH

public static final java.lang.String CHAR_WIDTH
This is the char width.

See Also:
Constant Field Values

IS_FIXED_PITCH

public static final java.lang.String IS_FIXED_PITCH
This will determine if this is fixed pitch.

See Also:
Constant Field Values

START_CHAR_METRICS

public static final java.lang.String START_CHAR_METRICS
This is the start of character metrics.

See Also:
Constant Field Values

END_CHAR_METRICS

public static final java.lang.String END_CHAR_METRICS
This is the end of character metrics.

See Also:
Constant Field Values

CHARMETRICS_C

public static final java.lang.String CHARMETRICS_C
The character metrics c value.

See Also:
Constant Field Values

CHARMETRICS_CH

public static final java.lang.String CHARMETRICS_CH
The character metrics c value.

See Also:
Constant Field Values

CHARMETRICS_WX

public static final java.lang.String CHARMETRICS_WX
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W0X

public static final java.lang.String CHARMETRICS_W0X
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W1X

public static final java.lang.String CHARMETRICS_W1X
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_WY

public static final java.lang.String CHARMETRICS_WY
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W0Y

public static final java.lang.String CHARMETRICS_W0Y
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W1Y

public static final java.lang.String CHARMETRICS_W1Y
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W

public static final java.lang.String CHARMETRICS_W
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W0

public static final java.lang.String CHARMETRICS_W0
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_W1

public static final java.lang.String CHARMETRICS_W1
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_VV

public static final java.lang.String CHARMETRICS_VV
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_N

public static final java.lang.String CHARMETRICS_N
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_B

public static final java.lang.String CHARMETRICS_B
The character metrics value.

See Also:
Constant Field Values

CHARMETRICS_L

public static final java.lang.String CHARMETRICS_L
The character metrics value.

See Also:
Constant Field Values

STD_HW

public static final java.lang.String STD_HW
The character metrics value.

See Also:
Constant Field Values

STD_VW

public static final java.lang.String STD_VW
The character metrics value.

See Also:
Constant Field Values

START_TRACK_KERN

public static final java.lang.String START_TRACK_KERN
This is the start of track kern data.

See Also:
Constant Field Values

END_TRACK_KERN

public static final java.lang.String END_TRACK_KERN
This is the end of track kern data.

See Also:
Constant Field Values

START_KERN_DATA

public static final java.lang.String START_KERN_DATA
This is the start of kern data.

See Also:
Constant Field Values

END_KERN_DATA

public static final java.lang.String END_KERN_DATA
This is the end of kern data.

See Also:
Constant Field Values

START_KERN_PAIRS

public static final java.lang.String START_KERN_PAIRS
This is the start of kern pairs data.

See Also:
Constant Field Values

END_KERN_PAIRS

public static final java.lang.String END_KERN_PAIRS
This is the end of kern pairs data.

See Also:
Constant Field Values

START_KERN_PAIRS0

public static final java.lang.String START_KERN_PAIRS0
This is the start of kern pairs data.

See Also:
Constant Field Values

START_KERN_PAIRS1

public static final java.lang.String START_KERN_PAIRS1
This is the start of kern pairs data.

See Also:
Constant Field Values

START_COMPOSITES

public static final java.lang.String START_COMPOSITES
This is the start compisites data section.

See Also:
Constant Field Values

END_COMPOSITES

public static final java.lang.String END_COMPOSITES
This is the end compisites data section.

See Also:
Constant Field Values

CC

public static final java.lang.String CC
This is a composite character.

See Also:
Constant Field Values

PCC

public static final java.lang.String PCC
This is a composite charater part.

See Also:
Constant Field Values

KERN_PAIR_KP

public static final java.lang.String KERN_PAIR_KP
This is a kern pair.

See Also:
Constant Field Values

KERN_PAIR_KPH

public static final java.lang.String KERN_PAIR_KPH
This is a kern pair.

See Also:
Constant Field Values

KERN_PAIR_KPX

public static final java.lang.String KERN_PAIR_KPX
This is a kern pair.

See Also:
Constant Field Values

KERN_PAIR_KPY

public static final java.lang.String KERN_PAIR_KPY
This is a kern pair.

See Also:
Constant Field Values
Constructor Detail

AFMParser

public AFMParser(java.io.InputStream in)
Constructor.

Parameters:
in - The input stream to read the AFM document from.
Method Detail

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
A method to test parsing of all AFM documents in the resources directory.

Parameters:
args - Ignored.
Throws:
java.io.IOException - If there is an error parsing one of the documents.

parse

public void parse()
           throws java.io.IOException
This will parse the AFM document. This will close the Input stream when the parsing is finished.

Throws:
java.io.IOException - If there is an IO error reading the document.

getResult

public FontMetric getResult()
This will get the result of the parsing.

Returns:
The parsed java object.


Copyright © 2008-2011 Apache Software Foundation. All Rights Reserved.