summaryrefslogtreecommitdiff
path: root/freetype2/docs/reference/ft2-tt_driver.html
diff options
context:
space:
mode:
Diffstat (limited to 'freetype2/docs/reference/ft2-tt_driver.html')
-rw-r--r--freetype2/docs/reference/ft2-tt_driver.html1170
1 files changed, 1170 insertions, 0 deletions
diff --git a/freetype2/docs/reference/ft2-tt_driver.html b/freetype2/docs/reference/ft2-tt_driver.html
new file mode 100644
index 0000000..562d78e
--- /dev/null
+++ b/freetype2/docs/reference/ft2-tt_driver.html
@@ -0,0 +1,1170 @@
+
+
+
+
+<!doctype html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+ <meta name="description" content="API Reference Documentation for FreeType-2.10.0">
+
+
+
+ <meta name="author" content="FreeType Contributors">
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="images/favico.ico">
+ <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.0.2">
+
+
+
+ <title>The TrueType driver - FreeType-2.10.0 API Reference</title>
+
+
+
+ <link rel="stylesheet" href="assets/stylesheets/application.982221ab.css">
+
+ <link rel="stylesheet" href="assets/stylesheets/application-palette.224b79ff.css">
+
+
+
+
+ <meta name="theme-color" content="#4caf50">
+
+
+
+ <script src="assets/javascripts/modernizr.1f0bcf2b.js"></script>
+
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+Serif:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Noto Serif","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+
+ <link rel="stylesheet" href="assets/fonts/material-icons.css">
+
+
+ <link rel="stylesheet" href="stylesheets/extra.css">
+
+
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="green" data-md-color-accent="green">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
+
+ <a href="#the-truetype-driver" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="index.html" title="FreeType-2.10.0 API Reference" class="md-header-nav__button md-logo">
+
+ <img src="images/favico.ico" width="24" height="24">
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+ <span class="md-header-nav__topic">
+ FreeType-2.10.0 API Reference
+ </span>
+ <span class="md-header-nav__topic">
+ The TrueType driver
+ </span>
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="__search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="__search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ &#xE5CD;
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="__drawer">
+ <a href="index.html" title="FreeType-2.10.0 API Reference" class="md-nav__button md-logo">
+
+ <img src="images/favico.ico" width="48" height="48">
+
+ </a>
+ FreeType-2.10.0 API Reference
+ </label>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="index.html" title="TOC" class="md-nav__link">
+ TOC
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-index.html" title="Index" class="md-nav__link">
+ Index
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ General Remarks
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ General Remarks
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-header_inclusion.html" title="FreeType's header inclusion scheme" class="md-nav__link">
+ FreeType's header inclusion scheme
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-user_allocation.html" title="User allocation" class="md-nav__link">
+ User allocation
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
+
+ <label class="md-nav__link" for="nav-4">
+ Core API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ Core API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-version.html" title="FreeType Version" class="md-nav__link">
+ FreeType Version
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-basic_types.html" title="Basic Data Types" class="md-nav__link">
+ Basic Data Types
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-base_interface.html" title="Base Interface" class="md-nav__link">
+ Base Interface
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-glyph_variants.html" title="Unicode Variation Sequences" class="md-nav__link">
+ Unicode Variation Sequences
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-color_management.html" title="Glyph Color Management" class="md-nav__link">
+ Glyph Color Management
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-layer_management.html" title="Glyph Layer Management" class="md-nav__link">
+ Glyph Layer Management
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-glyph_management.html" title="Glyph Management" class="md-nav__link">
+ Glyph Management
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-mac_specific.html" title="Mac Specific Interface" class="md-nav__link">
+ Mac Specific Interface
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-sizes_management.html" title="Size Management" class="md-nav__link">
+ Size Management
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-header_file_macros.html" title="Header File Macros" class="md-nav__link">
+ Header File Macros
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Format-Specific API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Format-Specific API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-multiple_masters.html" title="Multiple Masters" class="md-nav__link">
+ Multiple Masters
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-truetype_tables.html" title="TrueType Tables" class="md-nav__link">
+ TrueType Tables
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-type1_tables.html" title="Type 1 Tables" class="md-nav__link">
+ Type 1 Tables
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-sfnt_names.html" title="SFNT Names" class="md-nav__link">
+ SFNT Names
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-bdf_fonts.html" title="BDF and PCF Files" class="md-nav__link">
+ BDF and PCF Files
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-cid_fonts.html" title="CID Fonts" class="md-nav__link">
+ CID Fonts
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-pfr_fonts.html" title="PFR Fonts" class="md-nav__link">
+ PFR Fonts
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-winfnt_fonts.html" title="Window FNT Files" class="md-nav__link">
+ Window FNT Files
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-font_formats.html" title="Font Formats" class="md-nav__link">
+ Font Formats
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-gasp_table.html" title="Gasp Table" class="md-nav__link">
+ Gasp Table
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6" checked>
+
+ <label class="md-nav__link" for="nav-6">
+ Controlling FreeType Modules
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-6">
+ Controlling FreeType Modules
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-auto_hinter.html" title="The auto-hinter" class="md-nav__link">
+ The auto-hinter
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-cff_driver.html" title="The CFF driver" class="md-nav__link">
+ The CFF driver
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-t1_cid_driver.html" title="The Type 1 and CID drivers" class="md-nav__link">
+ The Type 1 and CID drivers
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
+
+
+
+
+ <label class="md-nav__link md-nav__link--active" for="__toc">
+ The TrueType driver
+ </label>
+
+ <a href="ft2-tt_driver.html" title="The TrueType driver" class="md-nav__link md-nav__link--active">
+ The TrueType driver
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="__toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#synopsis" title="Synopsis" class="md-nav__link">
+ Synopsis
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-pcf_driver.html" title="The PCF driver" class="md-nav__link">
+ The PCF driver
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-properties.html" title="Driver properties" class="md-nav__link">
+ Driver properties
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-parameter_tags.html" title="Parameter Tags" class="md-nav__link">
+ Parameter Tags
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-lcd_rendering.html" title="Subpixel Rendering" class="md-nav__link">
+ Subpixel Rendering
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-7" type="checkbox" id="nav-7">
+
+ <label class="md-nav__link" for="nav-7">
+ Cache Sub-System
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-7">
+ Cache Sub-System
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-cache_subsystem.html" title="Cache Sub-System" class="md-nav__link">
+ Cache Sub-System
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ Support API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ Support API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-computations.html" title="Computations" class="md-nav__link">
+ Computations
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-list_processing.html" title="List Processing" class="md-nav__link">
+ List Processing
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-outline_processing.html" title="Outline Processing" class="md-nav__link">
+ Outline Processing
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-quick_advance.html" title="Quick retrieval of advance values" class="md-nav__link">
+ Quick retrieval of advance values
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-bitmap_handling.html" title="Bitmap Handling" class="md-nav__link">
+ Bitmap Handling
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-raster.html" title="Scanline Converter" class="md-nav__link">
+ Scanline Converter
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-glyph_stroker.html" title="Glyph Stroker" class="md-nav__link">
+ Glyph Stroker
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-system_interface.html" title="System Interface" class="md-nav__link">
+ System Interface
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-module_management.html" title="Module Management" class="md-nav__link">
+ Module Management
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-gzip.html" title="GZIP Streams" class="md-nav__link">
+ GZIP Streams
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-lzw.html" title="LZW Streams" class="md-nav__link">
+ LZW Streams
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-bzip2.html" title="BZIP2 Streams" class="md-nav__link">
+ BZIP2 Streams
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-9" type="checkbox" id="nav-9">
+
+ <label class="md-nav__link" for="nav-9">
+ Error Codes
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-9">
+ Error Codes
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-error_enumerations.html" title="Error Enumerations" class="md-nav__link">
+ Error Enumerations
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-error_code_values.html" title="Error Code Values" class="md-nav__link">
+ Error Code Values
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10">
+
+ <label class="md-nav__link" for="nav-10">
+ Miscellaneous
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-10">
+ Miscellaneous
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-ot_validation.html" title="OpenType Validation" class="md-nav__link">
+ OpenType Validation
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-incremental.html" title="Incremental Loading" class="md-nav__link">
+ Incremental Loading
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-truetype_engine.html" title="The TrueType Engine" class="md-nav__link">
+ The TrueType Engine
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="ft2-gx_validation.html" title="TrueTypeGX/AAT Validation" class="md-nav__link">
+ TrueTypeGX/AAT Validation
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="__toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#synopsis" title="Synopsis" class="md-nav__link">
+ Synopsis
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+
+ <p><a href="https://www.freetype.org">FreeType</a> &raquo; <a href="../">Docs</a> &raquo; <a href="index.html#controlling-freetype-modules">Controlling FreeType Modules</a> &raquo; The TrueType driver</p>
+<hr />
+<h1 id="the-truetype-driver">The TrueType driver<a class="headerlink" href="#the-truetype-driver" title="Permanent link">&para;</a></h1>
+<h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">&para;</a></h2>
+<p>While FreeType's TrueType driver doesn't expose API functions by itself, it is possible to control its behaviour with <code><a href="ft2-module_management.html#ft_property_set">FT_Property_Set</a></code> and <code><a href="ft2-module_management.html#ft_property_get">FT_Property_Get</a></code>. The following lists the available properties together with the necessary macros and structures.</p>
+<p>The TrueType driver's module name is &lsquo;truetype&rsquo;.</p>
+<p>A single property <code><a href="ft2-properties.html#interpreter-version">interpreter-version</a></code> is available, as documented in the &lsquo;<a href="ft2-properties.html#properties">Driver properties</a>&rsquo; section.</p>
+<p>We start with a list of definitions, kindly provided by Greg Hitchcock.</p>
+<p><em>Bi-Level Rendering</em></p>
+<p>Monochromatic rendering, exclusively used in the early days of TrueType by both Apple and Microsoft. Microsoft's GDI interface supported hinting of the right-side bearing point, such that the advance width could be non-linear. Most often this was done to achieve some level of glyph symmetry. To enable reasonable performance (e.g., not having to run hinting on all glyphs just to get the widths) there was a bit in the head table indicating if the side bearing was hinted, and additional tables, &lsquo;hdmx&rsquo; and &lsquo;LTSH&rsquo;, to cache hinting widths across multiple sizes and device aspect ratios.</p>
+<p><em>Font Smoothing</em></p>
+<p>Microsoft's GDI implementation of anti-aliasing. Not traditional anti-aliasing as the outlines were hinted before the sampling. The widths matched the bi-level rendering.</p>
+<p><em>ClearType Rendering</em></p>
+<p>Technique that uses physical subpixels to improve rendering on LCD (and other) displays. Because of the higher resolution, many methods of improving symmetry in glyphs through hinting the right-side bearing were no longer necessary. This lead to what GDI calls &lsquo;natural widths&rsquo; ClearType, see <a href="http://rastertragedy.com/RTRCh4.htm#Sec21">http://rastertragedy.com/RTRCh4.htm#Sec21</a>. Since hinting has extra resolution, most non-linearity went away, but it is still possible for hints to change the advance widths in this mode.</p>
+<p><em>ClearType Compatible Widths</em></p>
+<p>One of the earliest challenges with ClearType was allowing the implementation in GDI to be selected without requiring all UI and documents to reflow. To address this, a compatible method of rendering ClearType was added where the font hints are executed once to determine the width in bi-level rendering, and then re-run in ClearType, with the difference in widths being absorbed in the font hints for ClearType (mostly in the white space of hints); see <a href="http://rastertragedy.com/RTRCh4.htm#Sec20">http://rastertragedy.com/RTRCh4.htm#Sec20</a>. Somewhat by definition, compatible width ClearType allows for non-linear widths, but only when the bi-level version has non-linear widths.</p>
+<p><em>ClearType Subpixel Positioning</em></p>
+<p>One of the nice benefits of ClearType is the ability to more crisply display fractional widths; unfortunately, the GDI model of integer bitmaps did not support this. However, the WPF and Direct Write frameworks do support fractional widths. DWrite calls this &lsquo;natural mode&rsquo;, not to be confused with GDI's &lsquo;natural widths&rsquo;. Subpixel positioning, in the current implementation of Direct Write, unfortunately does not support hinted advance widths, see <a href="http://rastertragedy.com/RTRCh4.htm#Sec22">http://rastertragedy.com/RTRCh4.htm#Sec22</a>. Note that the TrueType interpreter fully allows the advance width to be adjusted in this mode, just the DWrite client will ignore those changes.</p>
+<p><em>ClearType Backward Compatibility</em></p>
+<p>This is a set of exceptions made in the TrueType interpreter to minimize hinting techniques that were problematic with the extra resolution of ClearType; see <a href="http://rastertragedy.com/RTRCh4.htm#Sec1">http://rastertragedy.com/RTRCh4.htm#Sec1</a> and <a href="https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx">https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx</a>. This technique is not to be confused with ClearType compatible widths. ClearType backward compatibility has no direct impact on changing advance widths, but there might be an indirect impact on disabling some deltas. This could be worked around in backward compatibility mode.</p>
+<p><em>Native ClearType Mode</em></p>
+<p>(Not to be confused with &lsquo;natural widths&rsquo;.) This mode removes all the exceptions in the TrueType interpreter when running with ClearType. Any issues on widths would still apply, though.</p>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="ft2-t1_cid_driver.html" title="The Type 1 and CID drivers" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ The Type 1 and CID drivers
+ </span>
+ </div>
+ </a>
+
+
+ <a href="ft2-pcf_driver.html" title="The PCF driver" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ The PCF driver
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ <div class="md-footer-copyright__highlight">
+ Copyright 2019 <a href = "https://www.freetype.org/license.html">The FreeType Project</a>.
+ </div>
+
+ powered by
+ <a href="https://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="assets/javascripts/application.d9aa80ab.js"></script>
+
+ <script>app.initialize({version:"1.0.4",url:{base:"."}})</script>
+
+ <script src="javascripts/extra.js"></script>
+
+
+ </body>
+</html> \ No newline at end of file