Imported Upstream version 2.10.1
[platform/upstream/freetype2.git] / docs / reference / site / ft2-gzip.html
1
2
3
4
5 <!doctype html>
6 <html lang="en" class="no-js">
7   <head>
8     
9       <meta charset="utf-8">
10       <meta name="viewport" content="width=device-width,initial-scale=1">
11       <meta http-equiv="x-ua-compatible" content="ie=edge">
12       
13         <meta name="description" content="API Reference Documentation for FreeType-2.10.1">
14       
15       
16       
17         <meta name="author" content="FreeType Contributors">
18       
19       
20         <meta name="lang:clipboard.copy" content="Copy to clipboard">
21       
22         <meta name="lang:clipboard.copied" content="Copied to clipboard">
23       
24         <meta name="lang:search.language" content="en">
25       
26         <meta name="lang:search.pipeline.stopwords" content="True">
27       
28         <meta name="lang:search.pipeline.trimmer" content="True">
29       
30         <meta name="lang:search.result.none" content="No matching documents">
31       
32         <meta name="lang:search.result.one" content="1 matching document">
33       
34         <meta name="lang:search.result.other" content="# matching documents">
35       
36         <meta name="lang:search.tokenizer" content="[\s\-]+">
37       
38       <link rel="shortcut icon" href="images/favico.ico">
39       <meta name="generator" content="mkdocs-1.0.4, mkdocs-material-4.0.2">
40     
41     
42       
43         <title>GZIP Streams - FreeType-2.10.1 API Reference</title>
44       
45     
46     
47       <link rel="stylesheet" href="assets/stylesheets/application.982221ab.css">
48       
49         <link rel="stylesheet" href="assets/stylesheets/application-palette.224b79ff.css">
50       
51       
52         
53         
54         <meta name="theme-color" content="#4caf50">
55       
56     
57     
58       <script src="assets/javascripts/modernizr.1f0bcf2b.js"></script>
59     
60     
61       
62         <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
63         <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Noto+Serif:300,400,400i,700|Roboto+Mono">
64         <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>
65       
66     
67     <link rel="stylesheet" href="assets/fonts/material-icons.css">
68     
69     
70       <link rel="stylesheet" href="stylesheets/extra.css">
71     
72     
73       
74     
75     
76   </head>
77   
78     
79     
80     <body dir="ltr" data-md-color-primary="green" data-md-color-accent="green">
81   
82     <svg class="md-svg">
83       <defs>
84         
85         
86       </defs>
87     </svg>
88     <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
89     <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
90     <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
91     
92       <a href="#gzip-streams" tabindex="1" class="md-skip">
93         Skip to content
94       </a>
95     
96     
97       <header class="md-header" data-md-component="header">
98   <nav class="md-header-nav md-grid">
99     <div class="md-flex">
100       <div class="md-flex__cell md-flex__cell--shrink">
101         <a href="index.html" title="FreeType-2.10.1 API Reference" class="md-header-nav__button md-logo">
102           
103             <img src="images/favico.ico" width="24" height="24">
104           
105         </a>
106       </div>
107       <div class="md-flex__cell md-flex__cell--shrink">
108         <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
109       </div>
110       <div class="md-flex__cell md-flex__cell--stretch">
111         <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
112           
113             <span class="md-header-nav__topic">
114               FreeType-2.10.1 API Reference
115             </span>
116             <span class="md-header-nav__topic">
117               GZIP Streams
118             </span>
119           
120         </div>
121       </div>
122       <div class="md-flex__cell md-flex__cell--shrink">
123         
124           <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
125           
126 <div class="md-search" data-md-component="search" role="dialog">
127   <label class="md-search__overlay" for="__search"></label>
128   <div class="md-search__inner" role="search">
129     <form class="md-search__form" name="search">
130       <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">
131       <label class="md-icon md-search__icon" for="__search"></label>
132       <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
133         &#xE5CD;
134       </button>
135     </form>
136     <div class="md-search__output">
137       <div class="md-search__scrollwrap" data-md-scrollfix>
138         <div class="md-search-result" data-md-component="result">
139           <div class="md-search-result__meta">
140             Type to start searching
141           </div>
142           <ol class="md-search-result__list"></ol>
143         </div>
144       </div>
145     </div>
146   </div>
147 </div>
148         
149       </div>
150       
151     </div>
152   </nav>
153 </header>
154     
155     <div class="md-container">
156       
157         
158       
159       
160       <main class="md-main">
161         <div class="md-main__inner md-grid" data-md-component="container">
162           
163             
164               <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
165                 <div class="md-sidebar__scrollwrap">
166                   <div class="md-sidebar__inner">
167                     <nav class="md-nav md-nav--primary" data-md-level="0">
168   <label class="md-nav__title md-nav__title--site" for="__drawer">
169     <a href="index.html" title="FreeType-2.10.1 API Reference" class="md-nav__button md-logo">
170       
171         <img src="images/favico.ico" width="48" height="48">
172       
173     </a>
174     FreeType-2.10.1 API Reference
175   </label>
176   
177   <ul class="md-nav__list" data-md-scrollfix>
178     
179       
180       
181       
182
183
184   <li class="md-nav__item">
185     <a href="index.html" title="TOC" class="md-nav__link">
186       TOC
187     </a>
188   </li>
189
190     
191       
192       
193       
194
195
196   <li class="md-nav__item">
197     <a href="ft2-index.html" title="Index" class="md-nav__link">
198       Index
199     </a>
200   </li>
201
202     
203       
204       
205       
206
207
208   <li class="md-nav__item md-nav__item--nested">
209     
210       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
211     
212     <label class="md-nav__link" for="nav-3">
213       General Remarks
214     </label>
215     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
216       <label class="md-nav__title" for="nav-3">
217         General Remarks
218       </label>
219       <ul class="md-nav__list" data-md-scrollfix>
220         
221         
222           
223           
224           
225
226
227   <li class="md-nav__item">
228     <a href="ft2-header_inclusion.html" title="FreeType's header inclusion scheme" class="md-nav__link">
229       FreeType's header inclusion scheme
230     </a>
231   </li>
232
233         
234           
235           
236           
237
238
239   <li class="md-nav__item">
240     <a href="ft2-user_allocation.html" title="User allocation" class="md-nav__link">
241       User allocation
242     </a>
243   </li>
244
245         
246       </ul>
247     </nav>
248   </li>
249
250     
251       
252       
253       
254
255
256   <li class="md-nav__item md-nav__item--nested">
257     
258       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
259     
260     <label class="md-nav__link" for="nav-4">
261       Core API
262     </label>
263     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
264       <label class="md-nav__title" for="nav-4">
265         Core API
266       </label>
267       <ul class="md-nav__list" data-md-scrollfix>
268         
269         
270           
271           
272           
273
274
275   <li class="md-nav__item">
276     <a href="ft2-version.html" title="FreeType Version" class="md-nav__link">
277       FreeType Version
278     </a>
279   </li>
280
281         
282           
283           
284           
285
286
287   <li class="md-nav__item">
288     <a href="ft2-basic_types.html" title="Basic Data Types" class="md-nav__link">
289       Basic Data Types
290     </a>
291   </li>
292
293         
294           
295           
296           
297
298
299   <li class="md-nav__item">
300     <a href="ft2-base_interface.html" title="Base Interface" class="md-nav__link">
301       Base Interface
302     </a>
303   </li>
304
305         
306           
307           
308           
309
310
311   <li class="md-nav__item">
312     <a href="ft2-glyph_variants.html" title="Unicode Variation Sequences" class="md-nav__link">
313       Unicode Variation Sequences
314     </a>
315   </li>
316
317         
318           
319           
320           
321
322
323   <li class="md-nav__item">
324     <a href="ft2-color_management.html" title="Glyph Color Management" class="md-nav__link">
325       Glyph Color Management
326     </a>
327   </li>
328
329         
330           
331           
332           
333
334
335   <li class="md-nav__item">
336     <a href="ft2-layer_management.html" title="Glyph Layer Management" class="md-nav__link">
337       Glyph Layer Management
338     </a>
339   </li>
340
341         
342           
343           
344           
345
346
347   <li class="md-nav__item">
348     <a href="ft2-glyph_management.html" title="Glyph Management" class="md-nav__link">
349       Glyph Management
350     </a>
351   </li>
352
353         
354           
355           
356           
357
358
359   <li class="md-nav__item">
360     <a href="ft2-mac_specific.html" title="Mac Specific Interface" class="md-nav__link">
361       Mac Specific Interface
362     </a>
363   </li>
364
365         
366           
367           
368           
369
370
371   <li class="md-nav__item">
372     <a href="ft2-sizes_management.html" title="Size Management" class="md-nav__link">
373       Size Management
374     </a>
375   </li>
376
377         
378           
379           
380           
381
382
383   <li class="md-nav__item">
384     <a href="ft2-header_file_macros.html" title="Header File Macros" class="md-nav__link">
385       Header File Macros
386     </a>
387   </li>
388
389         
390       </ul>
391     </nav>
392   </li>
393
394     
395       
396       
397       
398
399
400   <li class="md-nav__item md-nav__item--nested">
401     
402       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
403     
404     <label class="md-nav__link" for="nav-5">
405       Format-Specific API
406     </label>
407     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
408       <label class="md-nav__title" for="nav-5">
409         Format-Specific API
410       </label>
411       <ul class="md-nav__list" data-md-scrollfix>
412         
413         
414           
415           
416           
417
418
419   <li class="md-nav__item">
420     <a href="ft2-multiple_masters.html" title="Multiple Masters" class="md-nav__link">
421       Multiple Masters
422     </a>
423   </li>
424
425         
426           
427           
428           
429
430
431   <li class="md-nav__item">
432     <a href="ft2-truetype_tables.html" title="TrueType Tables" class="md-nav__link">
433       TrueType Tables
434     </a>
435   </li>
436
437         
438           
439           
440           
441
442
443   <li class="md-nav__item">
444     <a href="ft2-type1_tables.html" title="Type 1 Tables" class="md-nav__link">
445       Type 1 Tables
446     </a>
447   </li>
448
449         
450           
451           
452           
453
454
455   <li class="md-nav__item">
456     <a href="ft2-sfnt_names.html" title="SFNT Names" class="md-nav__link">
457       SFNT Names
458     </a>
459   </li>
460
461         
462           
463           
464           
465
466
467   <li class="md-nav__item">
468     <a href="ft2-bdf_fonts.html" title="BDF and PCF Files" class="md-nav__link">
469       BDF and PCF Files
470     </a>
471   </li>
472
473         
474           
475           
476           
477
478
479   <li class="md-nav__item">
480     <a href="ft2-cid_fonts.html" title="CID Fonts" class="md-nav__link">
481       CID Fonts
482     </a>
483   </li>
484
485         
486           
487           
488           
489
490
491   <li class="md-nav__item">
492     <a href="ft2-pfr_fonts.html" title="PFR Fonts" class="md-nav__link">
493       PFR Fonts
494     </a>
495   </li>
496
497         
498           
499           
500           
501
502
503   <li class="md-nav__item">
504     <a href="ft2-winfnt_fonts.html" title="Window FNT Files" class="md-nav__link">
505       Window FNT Files
506     </a>
507   </li>
508
509         
510           
511           
512           
513
514
515   <li class="md-nav__item">
516     <a href="ft2-font_formats.html" title="Font Formats" class="md-nav__link">
517       Font Formats
518     </a>
519   </li>
520
521         
522           
523           
524           
525
526
527   <li class="md-nav__item">
528     <a href="ft2-gasp_table.html" title="Gasp Table" class="md-nav__link">
529       Gasp Table
530     </a>
531   </li>
532
533         
534       </ul>
535     </nav>
536   </li>
537
538     
539       
540       
541       
542
543
544   <li class="md-nav__item md-nav__item--nested">
545     
546       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6">
547     
548     <label class="md-nav__link" for="nav-6">
549       Controlling FreeType Modules
550     </label>
551     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
552       <label class="md-nav__title" for="nav-6">
553         Controlling FreeType Modules
554       </label>
555       <ul class="md-nav__list" data-md-scrollfix>
556         
557         
558           
559           
560           
561
562
563   <li class="md-nav__item">
564     <a href="ft2-auto_hinter.html" title="The auto-hinter" class="md-nav__link">
565       The auto-hinter
566     </a>
567   </li>
568
569         
570           
571           
572           
573
574
575   <li class="md-nav__item">
576     <a href="ft2-cff_driver.html" title="The CFF driver" class="md-nav__link">
577       The CFF driver
578     </a>
579   </li>
580
581         
582           
583           
584           
585
586
587   <li class="md-nav__item">
588     <a href="ft2-t1_cid_driver.html" title="The Type 1 and CID drivers" class="md-nav__link">
589       The Type 1 and CID drivers
590     </a>
591   </li>
592
593         
594           
595           
596           
597
598
599   <li class="md-nav__item">
600     <a href="ft2-tt_driver.html" title="The TrueType driver" class="md-nav__link">
601       The TrueType driver
602     </a>
603   </li>
604
605         
606           
607           
608           
609
610
611   <li class="md-nav__item">
612     <a href="ft2-pcf_driver.html" title="The PCF driver" class="md-nav__link">
613       The PCF driver
614     </a>
615   </li>
616
617         
618           
619           
620           
621
622
623   <li class="md-nav__item">
624     <a href="ft2-properties.html" title="Driver properties" class="md-nav__link">
625       Driver properties
626     </a>
627   </li>
628
629         
630           
631           
632           
633
634
635   <li class="md-nav__item">
636     <a href="ft2-parameter_tags.html" title="Parameter Tags" class="md-nav__link">
637       Parameter Tags
638     </a>
639   </li>
640
641         
642           
643           
644           
645
646
647   <li class="md-nav__item">
648     <a href="ft2-lcd_rendering.html" title="Subpixel Rendering" class="md-nav__link">
649       Subpixel Rendering
650     </a>
651   </li>
652
653         
654       </ul>
655     </nav>
656   </li>
657
658     
659       
660       
661       
662
663
664   <li class="md-nav__item md-nav__item--nested">
665     
666       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-7" type="checkbox" id="nav-7">
667     
668     <label class="md-nav__link" for="nav-7">
669       Cache Sub-System
670     </label>
671     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
672       <label class="md-nav__title" for="nav-7">
673         Cache Sub-System
674       </label>
675       <ul class="md-nav__list" data-md-scrollfix>
676         
677         
678           
679           
680           
681
682
683   <li class="md-nav__item">
684     <a href="ft2-cache_subsystem.html" title="Cache Sub-System" class="md-nav__link">
685       Cache Sub-System
686     </a>
687   </li>
688
689         
690       </ul>
691     </nav>
692   </li>
693
694     
695       
696       
697       
698
699   
700
701
702   <li class="md-nav__item md-nav__item--active md-nav__item--nested">
703     
704       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8" checked>
705     
706     <label class="md-nav__link" for="nav-8">
707       Support API
708     </label>
709     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
710       <label class="md-nav__title" for="nav-8">
711         Support API
712       </label>
713       <ul class="md-nav__list" data-md-scrollfix>
714         
715         
716           
717           
718           
719
720
721   <li class="md-nav__item">
722     <a href="ft2-computations.html" title="Computations" class="md-nav__link">
723       Computations
724     </a>
725   </li>
726
727         
728           
729           
730           
731
732
733   <li class="md-nav__item">
734     <a href="ft2-list_processing.html" title="List Processing" class="md-nav__link">
735       List Processing
736     </a>
737   </li>
738
739         
740           
741           
742           
743
744
745   <li class="md-nav__item">
746     <a href="ft2-outline_processing.html" title="Outline Processing" class="md-nav__link">
747       Outline Processing
748     </a>
749   </li>
750
751         
752           
753           
754           
755
756
757   <li class="md-nav__item">
758     <a href="ft2-quick_advance.html" title="Quick retrieval of advance values" class="md-nav__link">
759       Quick retrieval of advance values
760     </a>
761   </li>
762
763         
764           
765           
766           
767
768
769   <li class="md-nav__item">
770     <a href="ft2-bitmap_handling.html" title="Bitmap Handling" class="md-nav__link">
771       Bitmap Handling
772     </a>
773   </li>
774
775         
776           
777           
778           
779
780
781   <li class="md-nav__item">
782     <a href="ft2-raster.html" title="Scanline Converter" class="md-nav__link">
783       Scanline Converter
784     </a>
785   </li>
786
787         
788           
789           
790           
791
792
793   <li class="md-nav__item">
794     <a href="ft2-glyph_stroker.html" title="Glyph Stroker" class="md-nav__link">
795       Glyph Stroker
796     </a>
797   </li>
798
799         
800           
801           
802           
803
804
805   <li class="md-nav__item">
806     <a href="ft2-system_interface.html" title="System Interface" class="md-nav__link">
807       System Interface
808     </a>
809   </li>
810
811         
812           
813           
814           
815
816
817   <li class="md-nav__item">
818     <a href="ft2-module_management.html" title="Module Management" class="md-nav__link">
819       Module Management
820     </a>
821   </li>
822
823         
824           
825           
826           
827
828   
829
830
831   <li class="md-nav__item md-nav__item--active">
832     
833     <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
834     
835       
836     
837     
838       <label class="md-nav__link md-nav__link--active" for="__toc">
839         GZIP Streams
840       </label>
841     
842     <a href="ft2-gzip.html" title="GZIP Streams" class="md-nav__link md-nav__link--active">
843       GZIP Streams
844     </a>
845     
846       
847 <nav class="md-nav md-nav--secondary">
848   
849   
850     
851   
852   
853     <label class="md-nav__title" for="__toc">Table of contents</label>
854     <ul class="md-nav__list" data-md-scrollfix>
855       
856         <li class="md-nav__item">
857   <a href="#synopsis" title="Synopsis" class="md-nav__link">
858     Synopsis
859   </a>
860   
861 </li>
862       
863         <li class="md-nav__item">
864   <a href="#ft_stream_opengzip" title="FT_Stream_OpenGzip" class="md-nav__link">
865     FT_Stream_OpenGzip
866   </a>
867   
868 </li>
869       
870         <li class="md-nav__item">
871   <a href="#ft_gzip_uncompress" title="FT_Gzip_Uncompress" class="md-nav__link">
872     FT_Gzip_Uncompress
873   </a>
874   
875 </li>
876       
877       
878       
879       
880       
881     </ul>
882   
883 </nav>
884     
885   </li>
886
887         
888           
889           
890           
891
892
893   <li class="md-nav__item">
894     <a href="ft2-lzw.html" title="LZW Streams" class="md-nav__link">
895       LZW Streams
896     </a>
897   </li>
898
899         
900           
901           
902           
903
904
905   <li class="md-nav__item">
906     <a href="ft2-bzip2.html" title="BZIP2 Streams" class="md-nav__link">
907       BZIP2 Streams
908     </a>
909   </li>
910
911         
912       </ul>
913     </nav>
914   </li>
915
916     
917       
918       
919       
920
921
922   <li class="md-nav__item md-nav__item--nested">
923     
924       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-9" type="checkbox" id="nav-9">
925     
926     <label class="md-nav__link" for="nav-9">
927       Error Codes
928     </label>
929     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
930       <label class="md-nav__title" for="nav-9">
931         Error Codes
932       </label>
933       <ul class="md-nav__list" data-md-scrollfix>
934         
935         
936           
937           
938           
939
940
941   <li class="md-nav__item">
942     <a href="ft2-error_enumerations.html" title="Error Enumerations" class="md-nav__link">
943       Error Enumerations
944     </a>
945   </li>
946
947         
948           
949           
950           
951
952
953   <li class="md-nav__item">
954     <a href="ft2-error_code_values.html" title="Error Code Values" class="md-nav__link">
955       Error Code Values
956     </a>
957   </li>
958
959         
960       </ul>
961     </nav>
962   </li>
963
964     
965       
966       
967       
968
969
970   <li class="md-nav__item md-nav__item--nested">
971     
972       <input class="md-toggle md-nav__toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10">
973     
974     <label class="md-nav__link" for="nav-10">
975       Miscellaneous
976     </label>
977     <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
978       <label class="md-nav__title" for="nav-10">
979         Miscellaneous
980       </label>
981       <ul class="md-nav__list" data-md-scrollfix>
982         
983         
984           
985           
986           
987
988
989   <li class="md-nav__item">
990     <a href="ft2-ot_validation.html" title="OpenType Validation" class="md-nav__link">
991       OpenType Validation
992     </a>
993   </li>
994
995         
996           
997           
998           
999
1000
1001   <li class="md-nav__item">
1002     <a href="ft2-incremental.html" title="Incremental Loading" class="md-nav__link">
1003       Incremental Loading
1004     </a>
1005   </li>
1006
1007         
1008           
1009           
1010           
1011
1012
1013   <li class="md-nav__item">
1014     <a href="ft2-truetype_engine.html" title="The TrueType Engine" class="md-nav__link">
1015       The TrueType Engine
1016     </a>
1017   </li>
1018
1019         
1020           
1021           
1022           
1023
1024
1025   <li class="md-nav__item">
1026     <a href="ft2-gx_validation.html" title="TrueTypeGX/AAT Validation" class="md-nav__link">
1027       TrueTypeGX/AAT Validation
1028     </a>
1029   </li>
1030
1031         
1032       </ul>
1033     </nav>
1034   </li>
1035
1036     
1037   </ul>
1038 </nav>
1039                   </div>
1040                 </div>
1041               </div>
1042             
1043             
1044               <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
1045                 <div class="md-sidebar__scrollwrap">
1046                   <div class="md-sidebar__inner">
1047                     
1048 <nav class="md-nav md-nav--secondary">
1049   
1050   
1051     
1052   
1053   
1054     <label class="md-nav__title" for="__toc">Table of contents</label>
1055     <ul class="md-nav__list" data-md-scrollfix>
1056       
1057         <li class="md-nav__item">
1058   <a href="#synopsis" title="Synopsis" class="md-nav__link">
1059     Synopsis
1060   </a>
1061   
1062 </li>
1063       
1064         <li class="md-nav__item">
1065   <a href="#ft_stream_opengzip" title="FT_Stream_OpenGzip" class="md-nav__link">
1066     FT_Stream_OpenGzip
1067   </a>
1068   
1069 </li>
1070       
1071         <li class="md-nav__item">
1072   <a href="#ft_gzip_uncompress" title="FT_Gzip_Uncompress" class="md-nav__link">
1073     FT_Gzip_Uncompress
1074   </a>
1075   
1076 </li>
1077       
1078       
1079       
1080       
1081       
1082     </ul>
1083   
1084 </nav>
1085                   </div>
1086                 </div>
1087               </div>
1088             
1089           
1090           <div class="md-content">
1091             <article class="md-content__inner md-typeset">
1092               
1093                 
1094                 
1095                 <p><a href="https://www.freetype.org">FreeType</a> &raquo; <a href="../">Docs</a> &raquo; <a href="index.html#support-api">Support API</a> &raquo; GZIP Streams</p>
1096 <hr />
1097 <h1 id="gzip-streams">GZIP Streams<a class="headerlink" href="#gzip-streams" title="Permanent link">&para;</a></h1>
1098 <h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">&para;</a></h2>
1099 <p>This section contains the declaration of Gzip-specific functions.</p>
1100 <h2 id="ft_stream_opengzip">FT_Stream_OpenGzip<a class="headerlink" href="#ft_stream_opengzip" title="Permanent link">&para;</a></h2>
1101 <p>Defined in FT_GZIP_H (freetype/ftgzip.h).</p>
1102 <div class = "codehilite">
1103 <pre>
1104   FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> )
1105   <b>FT_Stream_OpenGzip</b>( <a href="ft2-system_interface.html#ft_stream">FT_Stream</a>  stream,
1106                       <a href="ft2-system_interface.html#ft_stream">FT_Stream</a>  source );
1107 </pre>
1108 </div>
1109
1110 <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>
1111 <h4>input</h4>
1112
1113 <table class="fields">
1114 <tr><td class="val" id="stream">stream</td><td class="desc">
1115 <p>The target embedding stream.</p>
1116 </td></tr>
1117 <tr><td class="val" id="source">source</td><td class="desc">
1118 <p>The source stream.</p>
1119 </td></tr>
1120 </table>
1121
1122 <h4>return</h4>
1123
1124 <p>FreeType error code. 0&nbsp;means success.</p>
1125 <h4>note</h4>
1126
1127 <p>The source stream must be opened <em>before</em> calling this function.</p>
1128 <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>
1129 <p>The stream implementation is very basic and resets the decompression process each time seeking backwards is needed within the stream.</p>
1130 <p>In certain builds of the library, gzip compression recognition is automatically handled when calling <code><a href="ft2-base_interface.html#ft_new_face">FT_New_Face</a></code> or <code><a href="ft2-base_interface.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>
1131 <p>This function may return <code>FT_Err_Unimplemented_Feature</code> if your build of FreeType was not compiled with zlib support.</p>
1132 <hr>
1133
1134 <h2 id="ft_gzip_uncompress">FT_Gzip_Uncompress<a class="headerlink" href="#ft_gzip_uncompress" title="Permanent link">&para;</a></h2>
1135 <p>Defined in FT_GZIP_H (freetype/ftgzip.h).</p>
1136 <div class = "codehilite">
1137 <pre>
1138   FT_EXPORT( <a href="ft2-basic_types.html#ft_error">FT_Error</a> )
1139   <b>FT_Gzip_Uncompress</b>( <a href="ft2-system_interface.html#ft_memory">FT_Memory</a>       memory,
1140                       <a href="ft2-basic_types.html#ft_byte">FT_Byte</a>*        output,
1141                       <a href="ft2-basic_types.html#ft_ulong">FT_ULong</a>*       output_len,
1142                       <span class="keyword">const</span> <a href="ft2-basic_types.html#ft_byte">FT_Byte</a>*  input,
1143                       <a href="ft2-basic_types.html#ft_ulong">FT_ULong</a>        input_len );
1144 </pre>
1145 </div>
1146
1147 <p>Decompress a zipped input buffer into an output buffer. This function is modeled after zlib's <code>uncompress</code> function.</p>
1148 <h4>input</h4>
1149
1150 <table class="fields">
1151 <tr><td class="val" id="memory">memory</td><td class="desc">
1152 <p>A FreeType memory handle.</p>
1153 </td></tr>
1154 <tr><td class="val" id="input">input</td><td class="desc">
1155 <p>The input buffer.</p>
1156 </td></tr>
1157 <tr><td class="val" id="input_len">input_len</td><td class="desc">
1158 <p>The length of the input buffer.</p>
1159 </td></tr>
1160 </table>
1161
1162 <h4>output</h4>
1163
1164 <table class="fields">
1165 <tr><td class="val" id="output">output</td><td class="desc">
1166 <p>The output buffer.</p>
1167 </td></tr>
1168 </table>
1169
1170 <h4>inout</h4>
1171
1172 <table class="fields">
1173 <tr><td class="val" id="output_len">output_len</td><td class="desc">
1174 <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>
1175 </td></tr>
1176 </table>
1177
1178 <h4>return</h4>
1179
1180 <p>FreeType error code. 0&nbsp;means success.</p>
1181 <h4>note</h4>
1182
1183 <p>This function may return <code>FT_Err_Unimplemented_Feature</code> if your build of FreeType was not compiled with zlib support.</p>
1184 <h4>since</h4>
1185
1186 <p>2.5.1</p>
1187 <hr>
1188                 
1189                   
1190                 
1191               
1192               
1193                 
1194
1195
1196               
1197             </article>
1198           </div>
1199         </div>
1200       </main>
1201       
1202         
1203 <footer class="md-footer">
1204   
1205     <div class="md-footer-nav">
1206       <nav class="md-footer-nav__inner md-grid">
1207         
1208           <a href="ft2-module_management.html" title="Module Management" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
1209             <div class="md-flex__cell md-flex__cell--shrink">
1210               <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
1211             </div>
1212             <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1213               <span class="md-flex__ellipsis">
1214                 <span class="md-footer-nav__direction">
1215                   Previous
1216                 </span>
1217                 Module Management
1218               </span>
1219             </div>
1220           </a>
1221         
1222         
1223           <a href="ft2-lzw.html" title="LZW Streams" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
1224             <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1225               <span class="md-flex__ellipsis">
1226                 <span class="md-footer-nav__direction">
1227                   Next
1228                 </span>
1229                 LZW Streams
1230               </span>
1231             </div>
1232             <div class="md-flex__cell md-flex__cell--shrink">
1233               <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
1234             </div>
1235           </a>
1236         
1237       </nav>
1238     </div>
1239   
1240   <div class="md-footer-meta md-typeset">
1241     <div class="md-footer-meta__inner md-grid">
1242       <div class="md-footer-copyright">
1243         
1244           <div class="md-footer-copyright__highlight">
1245             Copyright 2019 <a href = "https://www.freetype.org/license.html">The FreeType Project</a>.
1246           </div>
1247         
1248         powered by
1249         <a href="https://www.mkdocs.org">MkDocs</a>
1250         and
1251         <a href="https://squidfunk.github.io/mkdocs-material/">
1252           Material for MkDocs</a>
1253       </div>
1254       
1255     </div>
1256   </div>
1257 </footer>
1258       
1259     </div>
1260     
1261       <script src="assets/javascripts/application.d9aa80ab.js"></script>
1262       
1263       <script>app.initialize({version:"1.0.4",url:{base:"."}})</script>
1264       
1265         <script src="javascripts/extra.js"></script>
1266       
1267     
1268   </body>
1269 </html>