3 <html lang="en" class="no-js">
7 <meta name="viewport" content="width=device-width,initial-scale=1">
9 <meta name="description" content="API Reference Documentation for FreeType-2.13.2">
13 <meta name="author" content="FreeType Contributors">
16 <link rel="icon" href="images/favico.ico">
17 <meta name="generator" content="mkdocs-1.4.3, mkdocs-material-7.1.9">
21 <title>GZIP Streams - FreeType-2.13.2 API Reference</title>
25 <link rel="stylesheet" href="assets/stylesheets/main.ca7ac06f.min.css">
28 <link rel="stylesheet" href="assets/stylesheets/palette.f1a3b89f.min.css">
32 <meta name="theme-color" content="#4cae4f">
40 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
41 <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+Serif:300,400,400i,700%7CRoboto+Mono&display=fallback">
42 <style>:root{--md-text-font-family:"Noto Serif";--md-code-font-family:"Roboto Mono"}</style>
47 <link rel="stylesheet" href="stylesheets/extra.css">
63 <body dir="ltr" data-md-color-scheme="" data-md-color-primary="green" data-md-color-accent="green">
66 <script>function __prefix(e){return new URL(".",location).pathname+"."+e}function __get(e,t=localStorage){return JSON.parse(t.getItem(__prefix(e)))}</script>
68 <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
69 <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
70 <label class="md-overlay" for="__drawer"></label>
71 <div data-md-component="skip">
74 <a href="#gzip-streams" class="md-skip">
79 <div data-md-component="announce">
83 <header class="md-header" data-md-component="header">
84 <nav class="md-header__inner md-grid" aria-label="Header">
85 <a href="index.html" title="FreeType-2.13.2 API Reference" class="md-header__button md-logo" aria-label="FreeType-2.13.2 API Reference" data-md-component="logo">
87 <img src="images/favico.ico" alt="logo">
90 <label class="md-header__button md-icon" for="__drawer">
91 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
93 <div class="md-header__title" data-md-component="header-title">
94 <div class="md-header__ellipsis">
95 <div class="md-header__topic">
96 <span class="md-ellipsis">
97 FreeType-2.13.2 API Reference
100 <div class="md-header__topic" data-md-component="header-topic">
101 <span class="md-ellipsis">
112 <label class="md-header__button md-icon" for="__search">
113 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
116 <div class="md-search" data-md-component="search" role="dialog">
117 <label class="md-search__overlay" for="__search"></label>
118 <div class="md-search__inner" role="search">
119 <form class="md-search__form" name="search">
120 <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active" required>
121 <label class="md-search__icon md-icon" for="__search">
122 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
123 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
125 <button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1">
126 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
129 <div class="md-search__output">
130 <div class="md-search__scrollwrap" data-md-scrollfix>
131 <div class="md-search-result" data-md-component="search-result">
132 <div class="md-search-result__meta">
135 <ol class="md-search-result__list"></ol>
146 <div class="md-container" data-md-component="container">
151 <main class="md-main" data-md-component="main">
152 <div class="md-main__inner md-grid">
156 <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
157 <div class="md-sidebar__scrollwrap">
158 <div class="md-sidebar__inner">
162 <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
163 <label class="md-nav__title" for="__drawer">
164 <a href="index.html" title="FreeType-2.13.2 API Reference" class="md-nav__button md-logo" aria-label="FreeType-2.13.2 API Reference" data-md-component="logo">
166 <img src="images/favico.ico" alt="logo">
169 FreeType-2.13.2 API Reference
172 <ul class="md-nav__list" data-md-scrollfix>
181 <li class="md-nav__item">
182 <a href="index.html" class="md-nav__link">
196 <li class="md-nav__item">
197 <a href="ft2-index.html" class="md-nav__link">
212 <li class="md-nav__item md-nav__item--nested">
215 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3" type="checkbox" id="__nav_3" >
217 <label class="md-nav__link" for="__nav_3">
219 <span class="md-nav__icon md-icon"></span>
221 <nav class="md-nav" aria-label="General Remarks" data-md-level="1">
222 <label class="md-nav__title" for="__nav_3">
223 <span class="md-nav__icon md-icon"></span>
226 <ul class="md-nav__list" data-md-scrollfix>
232 <li class="md-nav__item">
233 <a href="ft2-preamble.html" class="md-nav__link">
244 <li class="md-nav__item">
245 <a href="ft2-header_inclusion.html" class="md-nav__link">
246 FreeType's header inclusion scheme
256 <li class="md-nav__item">
257 <a href="ft2-user_allocation.html" class="md-nav__link">
278 <li class="md-nav__item md-nav__item--nested">
281 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_4" type="checkbox" id="__nav_4" >
283 <label class="md-nav__link" for="__nav_4">
285 <span class="md-nav__icon md-icon"></span>
287 <nav class="md-nav" aria-label="Core API" data-md-level="1">
288 <label class="md-nav__title" for="__nav_4">
289 <span class="md-nav__icon md-icon"></span>
292 <ul class="md-nav__list" data-md-scrollfix>
298 <li class="md-nav__item">
299 <a href="ft2-basic_types.html" class="md-nav__link">
310 <li class="md-nav__item">
311 <a href="ft2-library_setup.html" class="md-nav__link">
322 <li class="md-nav__item">
323 <a href="ft2-face_creation.html" class="md-nav__link">
334 <li class="md-nav__item">
335 <a href="ft2-font_testing_macros.html" class="md-nav__link">
346 <li class="md-nav__item">
347 <a href="ft2-sizing_and_scaling.html" class="md-nav__link">
358 <li class="md-nav__item">
359 <a href="ft2-glyph_retrieval.html" class="md-nav__link">
370 <li class="md-nav__item">
371 <a href="ft2-character_mapping.html" class="md-nav__link">
382 <li class="md-nav__item">
383 <a href="ft2-information_retrieval.html" class="md-nav__link">
384 Information Retrieval
394 <li class="md-nav__item">
395 <a href="ft2-other_api_data.html" class="md-nav__link">
416 <li class="md-nav__item md-nav__item--nested">
419 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" >
421 <label class="md-nav__link" for="__nav_5">
423 <span class="md-nav__icon md-icon"></span>
425 <nav class="md-nav" aria-label="Extended API" data-md-level="1">
426 <label class="md-nav__title" for="__nav_5">
427 <span class="md-nav__icon md-icon"></span>
430 <ul class="md-nav__list" data-md-scrollfix>
436 <li class="md-nav__item">
437 <a href="ft2-glyph_variants.html" class="md-nav__link">
438 Unicode Variation Sequences
448 <li class="md-nav__item">
449 <a href="ft2-color_management.html" class="md-nav__link">
450 Glyph Color Management
460 <li class="md-nav__item">
461 <a href="ft2-layer_management.html" class="md-nav__link">
462 Glyph Layer Management
472 <li class="md-nav__item">
473 <a href="ft2-glyph_management.html" class="md-nav__link">
484 <li class="md-nav__item">
485 <a href="ft2-mac_specific.html" class="md-nav__link">
486 Mac Specific Interface
496 <li class="md-nav__item">
497 <a href="ft2-sizes_management.html" class="md-nav__link">
508 <li class="md-nav__item">
509 <a href="ft2-header_file_macros.html" class="md-nav__link">
530 <li class="md-nav__item md-nav__item--nested">
533 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
535 <label class="md-nav__link" for="__nav_6">
537 <span class="md-nav__icon md-icon"></span>
539 <nav class="md-nav" aria-label="Format-Specific API" data-md-level="1">
540 <label class="md-nav__title" for="__nav_6">
541 <span class="md-nav__icon md-icon"></span>
544 <ul class="md-nav__list" data-md-scrollfix>
550 <li class="md-nav__item">
551 <a href="ft2-multiple_masters.html" class="md-nav__link">
562 <li class="md-nav__item">
563 <a href="ft2-truetype_tables.html" class="md-nav__link">
574 <li class="md-nav__item">
575 <a href="ft2-type1_tables.html" class="md-nav__link">
586 <li class="md-nav__item">
587 <a href="ft2-sfnt_names.html" class="md-nav__link">
598 <li class="md-nav__item">
599 <a href="ft2-bdf_fonts.html" class="md-nav__link">
610 <li class="md-nav__item">
611 <a href="ft2-cid_fonts.html" class="md-nav__link">
622 <li class="md-nav__item">
623 <a href="ft2-pfr_fonts.html" class="md-nav__link">
634 <li class="md-nav__item">
635 <a href="ft2-winfnt_fonts.html" class="md-nav__link">
646 <li class="md-nav__item">
647 <a href="ft2-svg_fonts.html" class="md-nav__link">
658 <li class="md-nav__item">
659 <a href="ft2-font_formats.html" class="md-nav__link">
670 <li class="md-nav__item">
671 <a href="ft2-gasp_table.html" class="md-nav__link">
692 <li class="md-nav__item md-nav__item--nested">
695 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7" type="checkbox" id="__nav_7" >
697 <label class="md-nav__link" for="__nav_7">
698 Controlling FreeType Modules
699 <span class="md-nav__icon md-icon"></span>
701 <nav class="md-nav" aria-label="Controlling FreeType Modules" data-md-level="1">
702 <label class="md-nav__title" for="__nav_7">
703 <span class="md-nav__icon md-icon"></span>
704 Controlling FreeType Modules
706 <ul class="md-nav__list" data-md-scrollfix>
712 <li class="md-nav__item">
713 <a href="ft2-auto_hinter.html" class="md-nav__link">
724 <li class="md-nav__item">
725 <a href="ft2-cff_driver.html" class="md-nav__link">
736 <li class="md-nav__item">
737 <a href="ft2-t1_cid_driver.html" class="md-nav__link">
738 The Type 1 and CID drivers
748 <li class="md-nav__item">
749 <a href="ft2-tt_driver.html" class="md-nav__link">
760 <li class="md-nav__item">
761 <a href="ft2-pcf_driver.html" class="md-nav__link">
772 <li class="md-nav__item">
773 <a href="ft2-ot_svg_driver.html" class="md-nav__link">
784 <li class="md-nav__item">
785 <a href="ft2-properties.html" class="md-nav__link">
796 <li class="md-nav__item">
797 <a href="ft2-parameter_tags.html" class="md-nav__link">
808 <li class="md-nav__item">
809 <a href="ft2-lcd_rendering.html" class="md-nav__link">
830 <li class="md-nav__item md-nav__item--nested">
833 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_8" type="checkbox" id="__nav_8" >
835 <label class="md-nav__link" for="__nav_8">
837 <span class="md-nav__icon md-icon"></span>
839 <nav class="md-nav" aria-label="Cache Sub-System" data-md-level="1">
840 <label class="md-nav__title" for="__nav_8">
841 <span class="md-nav__icon md-icon"></span>
844 <ul class="md-nav__list" data-md-scrollfix>
850 <li class="md-nav__item">
851 <a href="ft2-cache_subsystem.html" class="md-nav__link">
874 <li class="md-nav__item md-nav__item--active md-nav__item--nested">
877 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_9" type="checkbox" id="__nav_9" checked>
879 <label class="md-nav__link" for="__nav_9">
881 <span class="md-nav__icon md-icon"></span>
883 <nav class="md-nav" aria-label="Support API" data-md-level="1">
884 <label class="md-nav__title" for="__nav_9">
885 <span class="md-nav__icon md-icon"></span>
888 <ul class="md-nav__list" data-md-scrollfix>
894 <li class="md-nav__item">
895 <a href="ft2-computations.html" class="md-nav__link">
906 <li class="md-nav__item">
907 <a href="ft2-list_processing.html" class="md-nav__link">
918 <li class="md-nav__item">
919 <a href="ft2-outline_processing.html" class="md-nav__link">
930 <li class="md-nav__item">
931 <a href="ft2-quick_advance.html" class="md-nav__link">
932 Quick retrieval of advance values
942 <li class="md-nav__item">
943 <a href="ft2-bitmap_handling.html" class="md-nav__link">
954 <li class="md-nav__item">
955 <a href="ft2-raster.html" class="md-nav__link">
966 <li class="md-nav__item">
967 <a href="ft2-glyph_stroker.html" class="md-nav__link">
978 <li class="md-nav__item">
979 <a href="ft2-system_interface.html" class="md-nav__link">
990 <li class="md-nav__item">
991 <a href="ft2-module_management.html" class="md-nav__link">
1004 <li class="md-nav__item md-nav__item--active">
1006 <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
1012 <label class="md-nav__link md-nav__link--active" for="__toc">
1014 <span class="md-nav__icon md-icon"></span>
1017 <a href="ft2-gzip.html" class="md-nav__link md-nav__link--active">
1022 <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
1029 <label class="md-nav__title" for="__toc">
1030 <span class="md-nav__icon md-icon"></span>
1033 <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
1035 <li class="md-nav__item">
1036 <a href="#synopsis" class="md-nav__link">
1042 <li class="md-nav__item">
1043 <a href="#ft_stream_opengzip" class="md-nav__link">
1049 <li class="md-nav__item">
1050 <a href="#ft_gzip_uncompress" class="md-nav__link">
1068 <li class="md-nav__item">
1069 <a href="ft2-lzw.html" class="md-nav__link">
1080 <li class="md-nav__item">
1081 <a href="ft2-bzip2.html" class="md-nav__link">
1092 <li class="md-nav__item">
1093 <a href="ft2-debugging_apis.html" class="md-nav__link">
1094 External Debugging APIs
1114 <li class="md-nav__item md-nav__item--nested">
1117 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_10" type="checkbox" id="__nav_10" >
1119 <label class="md-nav__link" for="__nav_10">
1121 <span class="md-nav__icon md-icon"></span>
1123 <nav class="md-nav" aria-label="Error Codes" data-md-level="1">
1124 <label class="md-nav__title" for="__nav_10">
1125 <span class="md-nav__icon md-icon"></span>
1128 <ul class="md-nav__list" data-md-scrollfix>
1134 <li class="md-nav__item">
1135 <a href="ft2-error_enumerations.html" class="md-nav__link">
1146 <li class="md-nav__item">
1147 <a href="ft2-error_code_values.html" class="md-nav__link">
1168 <li class="md-nav__item md-nav__item--nested">
1171 <input class="md-nav__toggle md-toggle" data-md-toggle="__nav_11" type="checkbox" id="__nav_11" >
1173 <label class="md-nav__link" for="__nav_11">
1175 <span class="md-nav__icon md-icon"></span>
1177 <nav class="md-nav" aria-label="Miscellaneous" data-md-level="1">
1178 <label class="md-nav__title" for="__nav_11">
1179 <span class="md-nav__icon md-icon"></span>
1182 <ul class="md-nav__list" data-md-scrollfix>
1188 <li class="md-nav__item">
1189 <a href="ft2-gx_validation.html" class="md-nav__link">
1190 TrueTypeGX/AAT Validation
1200 <li class="md-nav__item">
1201 <a href="ft2-incremental.html" class="md-nav__link">
1212 <li class="md-nav__item">
1213 <a href="ft2-truetype_engine.html" class="md-nav__link">
1224 <li class="md-nav__item">
1225 <a href="ft2-ot_validation.html" class="md-nav__link">
1246 <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
1247 <div class="md-sidebar__scrollwrap">
1248 <div class="md-sidebar__inner">
1250 <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
1257 <label class="md-nav__title" for="__toc">
1258 <span class="md-nav__icon md-icon"></span>
1261 <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
1263 <li class="md-nav__item">
1264 <a href="#synopsis" class="md-nav__link">
1270 <li class="md-nav__item">
1271 <a href="#ft_stream_opengzip" class="md-nav__link">
1277 <li class="md-nav__item">
1278 <a href="#ft_gzip_uncompress" class="md-nav__link">
1292 <div class="md-content" data-md-component="content">
1293 <article class="md-content__inner md-typeset">
1297 <p><a href="https://www.freetype.org">FreeType</a> » <a href="../">Docs</a> » <a href="index.html#support-api">Support API</a> » GZIP Streams</p>
1299 <h1 id="gzip-streams">GZIP Streams<a class="headerlink" href="#gzip-streams" title="Permanent link">¶</a></h1>
1300 <h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">¶</a></h2>
1301 <p>In certain builds of the library, gzip compression recognition is automatically handled when calling <code><a href="ft2-face_creation.html#ft_new_face">FT_New_Face</a></code> or <code><a href="ft2-face_creation.html#ft_open_face">FT_Open_Face</a></code>. This means that if no font driver is capable of handling the raw compressed file, the library will try to open a gzipped stream from it and re-open the face with it.</p>
1302 <p>The stream implementation is very basic and resets the decompression process each time seeking backwards is needed within the stream, which significantly undermines the performance.</p>
1303 <p>This section contains the declaration of Gzip-specific functions.</p>
1304 <h2 id="ft_stream_opengzip">FT_Stream_OpenGzip<a class="headerlink" href="#ft_stream_opengzip" title="Permanent link">¶</a></h2>
1305 <p>Defined in FT_GZIP_H (freetype/ftgzip.h).</p>
1306 <div class = "codehilite"><pre><code> FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> )
1307 <b>FT_Stream_OpenGzip</b>( <a href="ft2-system_interface.html#ft_stream">FT_Stream</a> stream,
1308 <a href="ft2-system_interface.html#ft_stream">FT_Stream</a> source );
1311 <p>Open a new stream to parse gzip-compressed font files. This is mainly used to support the compressed <code>*.pcf.gz</code> fonts that come with XFree86.</p>
1313 <table class="fields">
1314 <tr><td class="val" id="stream">stream</td><td class="desc">
1315 <p>The target embedding stream.</p>
1317 <tr><td class="val" id="source">source</td><td class="desc">
1318 <p>The source stream.</p>
1324 <p>FreeType error code. 0 means success.</p>
1327 <p>The source stream must be opened <em>before</em> calling this function.</p>
1328 <p>Calling the internal function <code>FT_Stream_Close</code> on the new stream will <strong>not</strong> call <code>FT_Stream_Close</code> on the source stream. None of the stream objects will be released to the heap.</p>
1329 <p>This function may return <code>FT_Err_Unimplemented_Feature</code> if your build of FreeType was not compiled with zlib support.</p>
1332 <h2 id="ft_gzip_uncompress">FT_Gzip_Uncompress<a class="headerlink" href="#ft_gzip_uncompress" title="Permanent link">¶</a></h2>
1333 <p>Defined in FT_GZIP_H (freetype/ftgzip.h).</p>
1334 <div class = "codehilite"><pre><code> FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> )
1335 <b>FT_Gzip_Uncompress</b>( <a href="ft2-system_interface.html#ft_memory">FT_Memory</a> memory,
1336 <a href="ft2-basic_types.html#ft_byte">FT_Byte</a>* output,
1337 <a href="ft2-basic_types.html#ft_ulong">FT_ULong</a>* output_len,
1338 <span class="keyword">const</span> <a href="ft2-basic_types.html#ft_byte">FT_Byte</a>* input,
1339 <a href="ft2-basic_types.html#ft_ulong">FT_ULong</a> input_len );
1342 <p>Decompress a zipped input buffer into an output buffer. This function is modeled after zlib's <code>uncompress</code> function.</p>
1344 <table class="fields">
1345 <tr><td class="val" id="memory">memory</td><td class="desc">
1346 <p>A FreeType memory handle.</p>
1348 <tr><td class="val" id="input">input</td><td class="desc">
1349 <p>The input buffer.</p>
1351 <tr><td class="val" id="input_len">input_len</td><td class="desc">
1352 <p>The length of the input buffer.</p>
1357 <table class="fields">
1358 <tr><td class="val" id="output">output</td><td class="desc">
1359 <p>The output buffer.</p>
1364 <table class="fields">
1365 <tr><td class="val" id="output_len">output_len</td><td class="desc">
1366 <p>Before calling the function, this is the total size of the output buffer, which must be large enough to hold the entire uncompressed data (so the size of the uncompressed data must be known in advance). After calling the function, <code>output_len</code> is the size of the used data in <code>output</code>.</p>
1372 <p>FreeType error code. 0 means success.</p>
1375 <p>This function may return <code>FT_Err_Unimplemented_Feature</code> if your build of FreeType was not compiled with zlib support.</p>
1394 <footer class="md-footer">
1396 <nav class="md-footer__inner md-grid" aria-label="Footer">
1399 <a href="ft2-module_management.html" class="md-footer__link md-footer__link--prev" aria-label="Previous: Module Management" rel="prev">
1400 <div class="md-footer__button md-icon">
1401 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
1403 <div class="md-footer__title">
1404 <div class="md-ellipsis">
1405 <span class="md-footer__direction">
1415 <a href="ft2-lzw.html" class="md-footer__link md-footer__link--next" aria-label="Next: LZW Streams" rel="next">
1416 <div class="md-footer__title">
1417 <div class="md-ellipsis">
1418 <span class="md-footer__direction">
1424 <div class="md-footer__button md-icon">
1425 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
1431 <div class="md-footer-meta md-typeset">
1432 <div class="md-footer-meta__inner md-grid">
1433 <div class="md-footer-copyright">
1435 <div class="md-footer-copyright__highlight">
1436 Copyright 2023 <a href = "https://www.freetype.org/license.html">The FreeType Project</a>.
1440 <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
1451 <div class="md-dialog" data-md-component="dialog">
1452 <div class="md-dialog__inner md-typeset"></div>
1454 <script id="__config" type="application/json">{"base": ".", "features": [], "search": "assets/javascripts/workers/search.477d984a.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "version": null}</script>
1457 <script src="assets/javascripts/bundle.82b56eb2.min.js"></script>
1459 <script src="javascripts/extra.js"></script>