T1DISASM(1) General Commands Manual T1DISASM(1)NAME
t1disasm - disassemble PostScript Type 1 font
SYNOPSIS
t1disasm [input [output]]
DESCRIPTION
t1disasm disassembles Adobe Type 1 font programs in either PFA (hexadecimal) or PFB (binary) formats into human-readable form. If the file
output is not specified output goes to the standard output. If the file input is not specified input comes from the standard input.
t1disasm performs eexec and charstring decryption as specified in the ``black book'', Adobe Type 1 Font Format. Additionally, the
charstring binary tokens are expanded into human-readable text form, using the names given in the black book and later documents describing
Type 2 opcodes.
EXAMPLES
% t1disasm Utopia-Regular.pfb Utopia-Regular.raw
% t1disasm Utopia-Regular.pfa Utopia-Regular.raw
In Subrs entries in Utopia-Regular.raw will look like
dup 5 {
8 111 vstem
-12 128 hstem
707 -20 hstem
return
} |
and the CharStrings entries like
/exclam {
58 242 hsbw
6 callsubr
5 4 callsubr
63 707 rmoveto
-54 0 -5 -22 4 -45 rrcurveto
40 -431 rlineto
29 hlineto
42 431 rlineto
4 45 -5 22 -55 0 rrcurveto
closepath
6 4 callsubr
-719 vmoveto
243 callsubr
endchar
} |-
SEE ALSO t1asm(1), t1ascii(1), t1binary(1), t1unmac(1), t1mac(1)
Adobe Type 1 Font Format is available free from Adobe as a PDF file: http://partners.adobe.com/asn/developer/PDFS/TN/T1_SPEC.PDF
The Type 2 Charstring Format, also available from Adobe as a PDF file, describes the newer Type 2 operators, which are also used in some
multiple-master Type 1 fonts like Adobe Jenson and Kepler: http://partners.adobe.com/asn/developer/PDFS/TN/5177.Type2.pdf
AUTHORS
Lee Hetherington (ilh@lcs.mit.edu)
Eddie Kohler (ekohler@gmail.com)
Version 1.37T1DISASM(1)
Check Out this Related Man Page
MMPFB(1) General Commands Manual MMPFB(1)NAME
mmpfb - creates single-master fonts from multiple master fonts
SYNOPSIS
mmpfb [OPTIONS...] font
DESCRIPTION
Mmpfb creates a normal, single-master PostScript font from a multiple master font by interpolation. You pass it a PFB or PFA font and
options specifying the design point you want; it writes the resulting PFB or PFA font to the standard output.
The fonts mmpfb creates are interpolated at a low level to remove multiple master instructions from individual characters. Therefore, they
can be used by programs that don't normally understand multiple master fonts, like ps2pk(1).
Mmpfb supports fonts with intermediate masters, like Adobe Jenson and Kepler. It can also create AMCP (Adobe Multiple Master Conversion
Program) files for use by mmafm(1); see --amcp-info below.
The font argument is either the name of a PFA or PFB font file, or a PostScript font name. If you give a font name, mmpfb will find the
actual outline file using the PSRESOURCEPATH environment variable. This colon-separated path is searched for `PSres.upr' files, an Adobe
method for indexing PostScript resources.
You can also give the name of a multiple master font instance, like `MinionMM_367_400_12_'. Mmpfb will parse the font name and create that
instance for you. `PSres.upr' files must be set up for this to work.
EXAMPLE
% mmpfb --weight=400 --width=600 MyriadMM.pfb > MyriadMM_400_600_.pfb
OPTIONS
Long options may be abbreviated to their unique prefixes.
--output=file, -o file
Send output to file instead of standard output.
--pfb, -b
Output a PFB font. This is the default.
--pfa, -a
Output a PFA font.
--amcp-info
Do not create a font; instead, output an AMCP file for use by mmafm(1). A message is printed if the font doesn't have intermediate
masters, in which case no AMCP file is necessary.
--weight=N, -w N
Set the weight axis to N.
--width=N, -W N
Set the width axis to N.
--optical-size=N, -O N
Set the optical size axis to N.
--style=N
Set the style axis to N.
--1=N (--2=N, --3=N, --4=N)
Set the first (second, third, fourth) axis to N.
--precision=N, -p N
Set the output precision to N. Higher values mean the control points in the output font will be more exactly aligned; lower values (1
or 2) create smaller output font files, and are close enough for most purposes. A precision of N means that each point will be within
1/N font units of the exact interpolated value. (A font unit is generally 1/7200 inch for a 10-point font.) The default is 5.
--subrs=N
Limit the output font to at most N subroutines. 256 is a good value for N.
--no-minimize
Do not minimize the output font definition. By default, mmpfb removes extra PostScript code and dictionary definitions from the font.
Supply the --no-minimize option to avoid this behavior.
TROUBLESHOOTING
The "IBM" Type 1 font interpreter shipped as part of the X font server and ps2pk (among others) is inappropriately strict about PostScript
code embedded in a font. The --minimize option (now the default) fixes this problem.
Some versions of Adobe Acrobat Distiller may report "Warning: unable to embed font X. Invalid character outline data" when distilling an
instance generated by mmpfb. This is due to a limitation in the number of font subroutines Distiller can accept. (Multiple master fonts,
and the single-master fonts generated by mmpfb, tend to have a lot of subroutines.) Try limiting the number of subroutines in the generated
font with the --subrs option.
SEE ALSO mmafm(1)DIAGNOSTICS
reducing font to minimum number of subroutines (N)
You tried to reduce the number of subroutines to less than N using the --subrs option, but the font needs at least N to function. The
output font will have N subroutines.
AUTHOR
Eddie Kohler, ekohler@gmail.com
The latest version is available from:
http://www.lcdf.org/type/
Thanks to Melissa O'Neill for suggestions and patient debugging.
Version 2.92 LCDF Typetools MMPFB(1)