Created Date: 20 May, 2022 15:49
Last Modifed Date: 20 May, 2022 15:49


Introduction

Mako includes numerous font resources that are used to ensure documents are rendered correctly even when the font is not available on the host system or embedded in the source document. The various classes of font are listed in the tables below.

Fonts available for creation

Only fonts present on a user’s system are available, or fonts that the user has explicitly loaded into an IDOMFontOpenType font object from disk or memory (with IDOMFontOpenType::create()). Mako supports OpenType, TrueType, and TrueType collections and automatically scans normal OS font installation locations. Mako built-in fonts are not exposed for this purpose.

PostScript users can install fonts with IDistiller::addFont(). This adds a font to the list of fonts for use when distilling with in-memory devices. Both the PostScript font name and the full name are added to the list. When using font or resource devices on disk, addFont() adds the font to the list of fonts on disk. Any existing font with the same name is removed. TrueType, TrueType collections or OpenType/CFF fonts are supported. For convenience, IDistiller::addFonts() is provided to add several fonts in one operation.

Internal fonts available for PDF and PostScript jobs (aka “Standard Fonts”)

  • Aavasaksa-Book (Compatible with AvantGarde-Book)
  • Aavasaksa-BookOblique (Compatible with AvantGarde-BookOblique)
  • Aavasaksa-Demi (Compatible with /AvantGarde-Demi)
  • Aavasaksa-DemiOblique (Compatible with /AvantGarde-DemiOblique)
  • Courier
  • Courier-Bold
  • Courier-BoldOblique
  • Courier-Oblique
  • Helsinki (Compatible with Helvetica)
  • Helsinki-Bold (Compatible with Helvetica-Bold)
  • Helsinki-BoldOblique (Compatible with Helvetica-BoldOblique)
  • Helsinki-Oblique (Compatible with Helvetica-Oblique)
  • Helsinki-Narrow (Compatible with Helvetica-Narrow)
  • Helsinki-Narrow-Bold (Compatible with Helvetica-Narrow-Bold)
  • Helsinki-Narrow-BoldOblique (Compatible with Helvetica-Narrow-BoldOblique)
  • Helsinki-Narrow-Oblique (Compatible with Helvetica-Narrow-Oblique)
  • Paltamo-Bold (Compatible with Palatino-Bold)
  • Paltamo-BoldItalic (Compatible with Palatino-BoldItalic)
  • Paltamo-Italic (Compatible with Palatino-Italic)
  • Paltamo-Roman (Compatible with Palatino-Roman)
  • Puumala-Demi (Compatible with Bookman-Demi)
  • Puumala-DemiItalic (Compatible with Bookman-DemiItalic)
  • Puumala-Light (Compatible with Bookman-Light)
  • Puumala-LightItalic (Compatible with Bookman-LightItalic)
  • Savonlinna (Compatible with ZapfDingbats)
  • Savonranta-MediumItalic (Compatible with ZapfChancery-MediumItalic)
  • Simpele (Compatible with Symbol)
  • Turku-Bold (Compatible with Times-Bold)
  • Turku-BoldItalic (Compatible with Times-BoldItalic)
  • Turku-Italic (Compatible with Times-Italic)
  • Turku-Roman (Compatible with Times-Roman)
  • Uusikaarlepyy-Bold (Compatible with NewCenturySchlbk-Bold)
  • Uusikaarlepyy-BoldItalic (Compatible with NewCenturySchlbk-BoldItalic)
  • Uusikaarlepyy-Italic (Compatible with NewCenturySchlbk-Italic)
  • Uusikaarlepyy-Roman (Compatible with NewCenturySchlbk-Roman)

Additional built-in Multiple Master fonts (used exclusively by Mako's internal Jaws RIP)

  • TTLSansMM (Jaws Multiple-Master Substitute Font, Sans Serif)
  • TTLSerifMM (Jaws Multiple-Master Substitute Font, Serif)
  • NotDefFont

Font used for CJK (CID) Substitution in PDF Input

This font is used when a CJK (Chinese-Korean-Japanese) font is not embedded, or the embedded font is corrupt in some way.

  • NimbusSansGlobal

Nimbus Sans Global is a family supporting Latin, Greek, Cyrillic, CJK ideographic, Japanese kana, Korean Hangul syllables, and Thai characters. This font is licensed from URW.

Mako first attempts to use standard Microsoft CJK fonts or IPA CJK fonts if installed on the user’s system (they are not included with Mako). These are:

  • MS-Gothic
  • MS-PGothic
  • MS-Mincho
  • MS-PMincho
  • MicrosoftJhengHeiRegular
  • MicrosoftJhengHeiBold
  • MingLiU
  • PMingLiU
  • SimHei
  • MicrosoftYaHei
  • MicrosoftYaHei-Bold
  • SimSun
  • FangSong
  • NSimSun
  • GulimChe
  • Gulim
  • BatangChe
  • GungsuhChe
  • Batang
  • Gungsuh
  • IPAMincho
  • IPAPMincho
  • IPAGothic
  • IPAPGothic

Font Emulation

Used for non-CID substitutions, these fonts, which use the Harlequin Font Emulation technology, are capable of being adjusted and instantiated to form a font with the required spacing and stroke attributes of the font that was requested.

  • GGSans - 
  • GGSans-Oblique
  • GGSerif
  • GGSerif-Italic

This whitepaper explains the principles of font emulation.

Other fonts available to PDF input jobs

Fonts installed on the OS that are compatible with Mako are made available for use by PDF jobs, as are any compatible fonts installed in the FontMap file. Mako supports OpenType, TrueType, and TrueType Collections. These fonts may be selected by either their PostScript or "Full" names.

(The FontMap file contains a list of fonts available on the user's system to save time when Mako starts up. Mako automatically generates and maintains it.)

Fonts available to PCL and PXL input jobs (Standard Fonts)

These are the names of the actual fonts, along with the name of the compatible family in parentheses, if applicable.

  • Algiers-ExtraBold (Albertus family)
  • Algiers-Medium (Albertus family)
  • AntiqueOlive-Bold
  • AntiqueOlive-Italic
  • AntiqueOlive-Regular
  • Dingbats (ITC Zapf Dingbats family)
  • Garamond-Antiqua
  • Garamond-Halbfett
  • Garamond-Kursiv
  • Garamond-KursivHalbfett
  • LetterGothic-Bold
  • LetterGothic-Italic
  • LetterGothic-Regular
  • Mauritius-Regular (Marigold family)
  • NimbusMono-Bold (Courier family)
  • NimbusMono-BoldItalic (Courier family)
  • NimbusMono-Italic (Courier family)
  • NimbusMono-Regular (Courier family)
  • NimbusMonoPS-Italic (Courier family)
  • NimbusRoman-Bold (Times family)
  • NimbusRoman-BoldItalic (Times family)
  • NimbusRoman-Italic (Times family)
  • NimbusRoman-Regular (Times family)
  • NimbusRomanNo4-Bold (CG Times family)
  • NimbusRomanNo4-BoldItalic (CG Times family)
  • NimbusRomanNo4-Italic (CG Times family)
  • NimbusRomanNo4-Regular (CG Times family)
  • NimbusRomanNo9-Bold (Times New Roman family)
  • NimbusRomanNo9-BoldItalic (Times New Roman family)
  • NimbusRomanNo9-Italic (Times New Roman family)
  • NimbusRomanNo9-Regular (Times New Roman family)
  • NimbusSans-Bold (Helvetica family)
  • NimbusSans-BoldOblique (Helvetica family)
  • NimbusSans-Oblique (Helvetica family)
  • NimbusSans-Regular (Helvetica family)
  • NimbusSansNarrow-BdOblique (Helvetica Narrow family)
  • NimbusSansNarrow-Bold (Helvetica Narrow family)
  • NimbusSansNarrow-Oblique (Helvetica Narrow family)
  • NimbusSansNarrow-Regular (Helvetica Narrow family)
  • NimbusSansNo2-Bold (Arial family)
  • NimbusSansNo2-BoldItalic (Arial family)
  • NimbusSansNo2-Italic (Arial family)
  • NimbusSansNo2-Regular (Arial family)
  • StandardSymbolsPS
  • Symbols (Symbol family)
  • URWBookman-Demi (ITC Bookman family)
  • URWBookman-DemiItalic (ITC Bookman family)
  • URWBookman-Light (ITC Bookman family)
  • URWBookman-LightItalic (ITC Bookman family)
  • URWCentury-BdIta (New Century Schoolbook family)
  • URWCentury-Bold (New Century Schoolbook family)
  • URWCentury-Italic (New Century Schoolbook family)
  • URWCentury-Roman (New Century Schoolbook family)
  • URWChancery-MediumItalic (ITC Zapf Chancery family)
  • URWClarendonCondensed-Bold (Clarendon family)
  • URWClassicSans-Bold (Univers family)
  • URWClassicSans-BoldItalic (Univers family)
  • URWClassicSans-Regular (Univers family)
  • URWClassicSans-RegularIt (Univers family)
  • URWClassicSansCond-BdItalic (Univers family)
  • URWClassicSansCond-Bold (Univers family)
  • URWClassicSansCond-Italic (Univers family)
  • URWClassicSansCond-Regular (Univers family)
  • URWClassico-Bold (CG Omega family)
  • URWClassico-BoldItalic (CG Omega family)
  • URWClassico-Italic (CG Omega family)
  • URWClassico-Regular (CG Omega family)
  • URWCorsica-Regular (Coronet family)
  • URWDings (Wingdings family)
  • URWGothic-Book (ITC Avant Garde family)
  • URWGothic-BookOblique (ITC Avant Garde family)
  • URWGothic-Demi (ITC Avant Garde family)
  • URWGothic-DemiOblique (ITC Avant Garde family)
  • URWPalladio-Bold (Palatino family)
  • URWPalladio-BoldItalic (Palatino family)
  • URWPalladio-Italic (Palatino family)
  • URWPalladio-Roman (Palatino family)
  • LinePrinter