• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.4">
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.1, mkdocs-material-4.6.3">
40
41
42
43        <title>Scanline Converter - FreeType-2.10.4 API Reference</title>
44
45
46
47      <link rel="stylesheet" href="assets/stylesheets/application.adb8469c.css">
48
49        <link rel="stylesheet" href="assets/stylesheets/application-palette.a8b3c06d.css">
50
51
52
53
54        <meta name="theme-color" content="#4caf50">
55
56
57
58      <script src="assets/javascripts/modernizr.86422ebf.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%7CRoboto+Mono&display=fallback">
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="#scanline-converter" tabindex="0" 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="." title="FreeType-2.10.4 API Reference" aria-label="FreeType-2.10.4 API Reference" class="md-header-nav__button md-logo">
102
103            <img alt="logo" 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.4 API Reference
115            </span>
116            <span class="md-header-nav__topic">
117
118                Scanline Converter
119
120            </span>
121
122        </div>
123      </div>
124      <div class="md-flex__cell md-flex__cell--shrink">
125
126          <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
127
128<div class="md-search" data-md-component="search" role="dialog">
129  <label class="md-search__overlay" for="__search"></label>
130  <div class="md-search__inner" role="search">
131    <form class="md-search__form" name="search">
132      <input type="text" class="md-search__input" aria-label="search" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
133      <label class="md-icon md-search__icon" for="__search"></label>
134      <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
135        &#xE5CD;
136      </button>
137    </form>
138    <div class="md-search__output">
139      <div class="md-search__scrollwrap" data-md-scrollfix>
140        <div class="md-search-result" data-md-component="result">
141          <div class="md-search-result__meta">
142            Type to start searching
143          </div>
144          <ol class="md-search-result__list"></ol>
145        </div>
146      </div>
147    </div>
148  </div>
149</div>
150
151      </div>
152
153    </div>
154  </nav>
155</header>
156
157    <div class="md-container">
158
159
160
161
162      <main class="md-main" role="main">
163        <div class="md-main__inner md-grid" data-md-component="container">
164
165
166              <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
167                <div class="md-sidebar__scrollwrap">
168                  <div class="md-sidebar__inner">
169                    <nav class="md-nav md-nav--primary" data-md-level="0">
170  <label class="md-nav__title md-nav__title--site" for="__drawer">
171    <a href="." title="FreeType-2.10.4 API Reference" class="md-nav__button md-logo">
172
173        <img alt="logo" src="images/favico.ico" width="48" height="48">
174
175    </a>
176    FreeType-2.10.4 API Reference
177  </label>
178
179  <ul class="md-nav__list" data-md-scrollfix>
180
181
182
183
184
185
186  <li class="md-nav__item">
187    <a href="index.html" title="TOC" class="md-nav__link">
188      TOC
189    </a>
190  </li>
191
192
193
194
195
196
197
198  <li class="md-nav__item">
199    <a href="ft2-index.html" title="Index" class="md-nav__link">
200      Index
201    </a>
202  </li>
203
204
205
206
207
208
209
210  <li class="md-nav__item md-nav__item--nested">
211
212      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
213
214    <label class="md-nav__link" for="nav-3">
215      General Remarks
216    </label>
217    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
218      <label class="md-nav__title" for="nav-3">
219        General Remarks
220      </label>
221      <ul class="md-nav__list" data-md-scrollfix>
222
223
224
225
226
227
228
229  <li class="md-nav__item">
230    <a href="ft2-header_inclusion.html" title="FreeType's header inclusion scheme" class="md-nav__link">
231      FreeType's header inclusion scheme
232    </a>
233  </li>
234
235
236
237
238
239
240
241  <li class="md-nav__item">
242    <a href="ft2-user_allocation.html" title="User allocation" class="md-nav__link">
243      User allocation
244    </a>
245  </li>
246
247
248      </ul>
249    </nav>
250  </li>
251
252
253
254
255
256
257
258  <li class="md-nav__item md-nav__item--nested">
259
260      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
261
262    <label class="md-nav__link" for="nav-4">
263      Core API
264    </label>
265    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
266      <label class="md-nav__title" for="nav-4">
267        Core API
268      </label>
269      <ul class="md-nav__list" data-md-scrollfix>
270
271
272
273
274
275
276
277  <li class="md-nav__item">
278    <a href="ft2-version.html" title="FreeType Version" class="md-nav__link">
279      FreeType Version
280    </a>
281  </li>
282
283
284
285
286
287
288
289  <li class="md-nav__item">
290    <a href="ft2-basic_types.html" title="Basic Data Types" class="md-nav__link">
291      Basic Data Types
292    </a>
293  </li>
294
295
296
297
298
299
300
301  <li class="md-nav__item">
302    <a href="ft2-base_interface.html" title="Base Interface" class="md-nav__link">
303      Base Interface
304    </a>
305  </li>
306
307
308
309
310
311
312
313  <li class="md-nav__item">
314    <a href="ft2-glyph_variants.html" title="Unicode Variation Sequences" class="md-nav__link">
315      Unicode Variation Sequences
316    </a>
317  </li>
318
319
320
321
322
323
324
325  <li class="md-nav__item">
326    <a href="ft2-color_management.html" title="Glyph Color Management" class="md-nav__link">
327      Glyph Color Management
328    </a>
329  </li>
330
331
332
333
334
335
336
337  <li class="md-nav__item">
338    <a href="ft2-layer_management.html" title="Glyph Layer Management" class="md-nav__link">
339      Glyph Layer Management
340    </a>
341  </li>
342
343
344
345
346
347
348
349  <li class="md-nav__item">
350    <a href="ft2-glyph_management.html" title="Glyph Management" class="md-nav__link">
351      Glyph Management
352    </a>
353  </li>
354
355
356
357
358
359
360
361  <li class="md-nav__item">
362    <a href="ft2-mac_specific.html" title="Mac Specific Interface" class="md-nav__link">
363      Mac Specific Interface
364    </a>
365  </li>
366
367
368
369
370
371
372
373  <li class="md-nav__item">
374    <a href="ft2-sizes_management.html" title="Size Management" class="md-nav__link">
375      Size Management
376    </a>
377  </li>
378
379
380
381
382
383
384
385  <li class="md-nav__item">
386    <a href="ft2-header_file_macros.html" title="Header File Macros" class="md-nav__link">
387      Header File Macros
388    </a>
389  </li>
390
391
392      </ul>
393    </nav>
394  </li>
395
396
397
398
399
400
401
402  <li class="md-nav__item md-nav__item--nested">
403
404      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
405
406    <label class="md-nav__link" for="nav-5">
407      Format-Specific API
408    </label>
409    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
410      <label class="md-nav__title" for="nav-5">
411        Format-Specific API
412      </label>
413      <ul class="md-nav__list" data-md-scrollfix>
414
415
416
417
418
419
420
421  <li class="md-nav__item">
422    <a href="ft2-multiple_masters.html" title="Multiple Masters" class="md-nav__link">
423      Multiple Masters
424    </a>
425  </li>
426
427
428
429
430
431
432
433  <li class="md-nav__item">
434    <a href="ft2-truetype_tables.html" title="TrueType Tables" class="md-nav__link">
435      TrueType Tables
436    </a>
437  </li>
438
439
440
441
442
443
444
445  <li class="md-nav__item">
446    <a href="ft2-type1_tables.html" title="Type 1 Tables" class="md-nav__link">
447      Type 1 Tables
448    </a>
449  </li>
450
451
452
453
454
455
456
457  <li class="md-nav__item">
458    <a href="ft2-sfnt_names.html" title="SFNT Names" class="md-nav__link">
459      SFNT Names
460    </a>
461  </li>
462
463
464
465
466
467
468
469  <li class="md-nav__item">
470    <a href="ft2-bdf_fonts.html" title="BDF and PCF Files" class="md-nav__link">
471      BDF and PCF Files
472    </a>
473  </li>
474
475
476
477
478
479
480
481  <li class="md-nav__item">
482    <a href="ft2-cid_fonts.html" title="CID Fonts" class="md-nav__link">
483      CID Fonts
484    </a>
485  </li>
486
487
488
489
490
491
492
493  <li class="md-nav__item">
494    <a href="ft2-pfr_fonts.html" title="PFR Fonts" class="md-nav__link">
495      PFR Fonts
496    </a>
497  </li>
498
499
500
501
502
503
504
505  <li class="md-nav__item">
506    <a href="ft2-winfnt_fonts.html" title="Window FNT Files" class="md-nav__link">
507      Window FNT Files
508    </a>
509  </li>
510
511
512
513
514
515
516
517  <li class="md-nav__item">
518    <a href="ft2-font_formats.html" title="Font Formats" class="md-nav__link">
519      Font Formats
520    </a>
521  </li>
522
523
524
525
526
527
528
529  <li class="md-nav__item">
530    <a href="ft2-gasp_table.html" title="Gasp Table" class="md-nav__link">
531      Gasp Table
532    </a>
533  </li>
534
535
536      </ul>
537    </nav>
538  </li>
539
540
541
542
543
544
545
546  <li class="md-nav__item md-nav__item--nested">
547
548      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6">
549
550    <label class="md-nav__link" for="nav-6">
551      Controlling FreeType Modules
552    </label>
553    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
554      <label class="md-nav__title" for="nav-6">
555        Controlling FreeType Modules
556      </label>
557      <ul class="md-nav__list" data-md-scrollfix>
558
559
560
561
562
563
564
565  <li class="md-nav__item">
566    <a href="ft2-auto_hinter.html" title="The auto-hinter" class="md-nav__link">
567      The auto-hinter
568    </a>
569  </li>
570
571
572
573
574
575
576
577  <li class="md-nav__item">
578    <a href="ft2-cff_driver.html" title="The CFF driver" class="md-nav__link">
579      The CFF driver
580    </a>
581  </li>
582
583
584
585
586
587
588
589  <li class="md-nav__item">
590    <a href="ft2-t1_cid_driver.html" title="The Type 1 and CID drivers" class="md-nav__link">
591      The Type 1 and CID drivers
592    </a>
593  </li>
594
595
596
597
598
599
600
601  <li class="md-nav__item">
602    <a href="ft2-tt_driver.html" title="The TrueType driver" class="md-nav__link">
603      The TrueType driver
604    </a>
605  </li>
606
607
608
609
610
611
612
613  <li class="md-nav__item">
614    <a href="ft2-pcf_driver.html" title="The PCF driver" class="md-nav__link">
615      The PCF driver
616    </a>
617  </li>
618
619
620
621
622
623
624
625  <li class="md-nav__item">
626    <a href="ft2-properties.html" title="Driver properties" class="md-nav__link">
627      Driver properties
628    </a>
629  </li>
630
631
632
633
634
635
636
637  <li class="md-nav__item">
638    <a href="ft2-parameter_tags.html" title="Parameter Tags" class="md-nav__link">
639      Parameter Tags
640    </a>
641  </li>
642
643
644
645
646
647
648
649  <li class="md-nav__item">
650    <a href="ft2-lcd_rendering.html" title="Subpixel Rendering" class="md-nav__link">
651      Subpixel Rendering
652    </a>
653  </li>
654
655
656      </ul>
657    </nav>
658  </li>
659
660
661
662
663
664
665
666  <li class="md-nav__item md-nav__item--nested">
667
668      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-7" type="checkbox" id="nav-7">
669
670    <label class="md-nav__link" for="nav-7">
671      Cache Sub-System
672    </label>
673    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
674      <label class="md-nav__title" for="nav-7">
675        Cache Sub-System
676      </label>
677      <ul class="md-nav__list" data-md-scrollfix>
678
679
680
681
682
683
684
685  <li class="md-nav__item">
686    <a href="ft2-cache_subsystem.html" title="Cache Sub-System" class="md-nav__link">
687      Cache Sub-System
688    </a>
689  </li>
690
691
692      </ul>
693    </nav>
694  </li>
695
696
697
698
699
700
701
702
703
704  <li class="md-nav__item md-nav__item--active md-nav__item--nested">
705
706      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8" checked>
707
708    <label class="md-nav__link" for="nav-8">
709      Support API
710    </label>
711    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
712      <label class="md-nav__title" for="nav-8">
713        Support API
714      </label>
715      <ul class="md-nav__list" data-md-scrollfix>
716
717
718
719
720
721
722
723  <li class="md-nav__item">
724    <a href="ft2-computations.html" title="Computations" class="md-nav__link">
725      Computations
726    </a>
727  </li>
728
729
730
731
732
733
734
735  <li class="md-nav__item">
736    <a href="ft2-list_processing.html" title="List Processing" class="md-nav__link">
737      List Processing
738    </a>
739  </li>
740
741
742
743
744
745
746
747  <li class="md-nav__item">
748    <a href="ft2-outline_processing.html" title="Outline Processing" class="md-nav__link">
749      Outline Processing
750    </a>
751  </li>
752
753
754
755
756
757
758
759  <li class="md-nav__item">
760    <a href="ft2-quick_advance.html" title="Quick retrieval of advance values" class="md-nav__link">
761      Quick retrieval of advance values
762    </a>
763  </li>
764
765
766
767
768
769
770
771  <li class="md-nav__item">
772    <a href="ft2-bitmap_handling.html" title="Bitmap Handling" class="md-nav__link">
773      Bitmap Handling
774    </a>
775  </li>
776
777
778
779
780
781
782
783
784
785  <li class="md-nav__item md-nav__item--active">
786
787    <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
788
789
790
791
792      <label class="md-nav__link md-nav__link--active" for="__toc">
793        Scanline Converter
794      </label>
795
796    <a href="ft2-raster.html" title="Scanline Converter" class="md-nav__link md-nav__link--active">
797      Scanline Converter
798    </a>
799
800
801<nav class="md-nav md-nav--secondary">
802
803
804
805
806
807    <label class="md-nav__title" for="__toc">Table of contents</label>
808    <ul class="md-nav__list" data-md-scrollfix>
809
810        <li class="md-nav__item">
811  <a href="#synopsis" class="md-nav__link">
812    Synopsis
813  </a>
814
815</li>
816
817        <li class="md-nav__item">
818  <a href="#ft_raster" class="md-nav__link">
819    FT_Raster
820  </a>
821
822</li>
823
824        <li class="md-nav__item">
825  <a href="#ft_span" class="md-nav__link">
826    FT_Span
827  </a>
828
829</li>
830
831        <li class="md-nav__item">
832  <a href="#ft_spanfunc" class="md-nav__link">
833    FT_SpanFunc
834  </a>
835
836</li>
837
838        <li class="md-nav__item">
839  <a href="#ft_raster_params" class="md-nav__link">
840    FT_Raster_Params
841  </a>
842
843</li>
844
845        <li class="md-nav__item">
846  <a href="#ft_raster_flag_xxx" class="md-nav__link">
847    FT_RASTER_FLAG_XXX
848  </a>
849
850</li>
851
852        <li class="md-nav__item">
853  <a href="#ft_raster_newfunc" class="md-nav__link">
854    FT_Raster_NewFunc
855  </a>
856
857</li>
858
859        <li class="md-nav__item">
860  <a href="#ft_raster_donefunc" class="md-nav__link">
861    FT_Raster_DoneFunc
862  </a>
863
864</li>
865
866        <li class="md-nav__item">
867  <a href="#ft_raster_resetfunc" class="md-nav__link">
868    FT_Raster_ResetFunc
869  </a>
870
871</li>
872
873        <li class="md-nav__item">
874  <a href="#ft_raster_setmodefunc" class="md-nav__link">
875    FT_Raster_SetModeFunc
876  </a>
877
878</li>
879
880        <li class="md-nav__item">
881  <a href="#ft_raster_renderfunc" class="md-nav__link">
882    FT_Raster_RenderFunc
883  </a>
884
885</li>
886
887        <li class="md-nav__item">
888  <a href="#ft_raster_funcs" class="md-nav__link">
889    FT_Raster_Funcs
890  </a>
891
892</li>
893
894        <li class="md-nav__item">
895  <a href="#ft_raster_bittest_func" class="md-nav__link">
896    FT_Raster_BitTest_Func
897  </a>
898
899</li>
900
901        <li class="md-nav__item">
902  <a href="#ft_raster_bitset_func" class="md-nav__link">
903    FT_Raster_BitSet_Func
904  </a>
905
906</li>
907
908
909
910
911
912    </ul>
913
914</nav>
915
916  </li>
917
918
919
920
921
922
923
924  <li class="md-nav__item">
925    <a href="ft2-glyph_stroker.html" title="Glyph Stroker" class="md-nav__link">
926      Glyph Stroker
927    </a>
928  </li>
929
930
931
932
933
934
935
936  <li class="md-nav__item">
937    <a href="ft2-system_interface.html" title="System Interface" class="md-nav__link">
938      System Interface
939    </a>
940  </li>
941
942
943
944
945
946
947
948  <li class="md-nav__item">
949    <a href="ft2-module_management.html" title="Module Management" class="md-nav__link">
950      Module Management
951    </a>
952  </li>
953
954
955
956
957
958
959
960  <li class="md-nav__item">
961    <a href="ft2-gzip.html" title="GZIP Streams" class="md-nav__link">
962      GZIP Streams
963    </a>
964  </li>
965
966
967
968
969
970
971
972  <li class="md-nav__item">
973    <a href="ft2-lzw.html" title="LZW Streams" class="md-nav__link">
974      LZW Streams
975    </a>
976  </li>
977
978
979
980
981
982
983
984  <li class="md-nav__item">
985    <a href="ft2-bzip2.html" title="BZIP2 Streams" class="md-nav__link">
986      BZIP2 Streams
987    </a>
988  </li>
989
990
991      </ul>
992    </nav>
993  </li>
994
995
996
997
998
999
1000
1001  <li class="md-nav__item md-nav__item--nested">
1002
1003      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-9" type="checkbox" id="nav-9">
1004
1005    <label class="md-nav__link" for="nav-9">
1006      Error Codes
1007    </label>
1008    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
1009      <label class="md-nav__title" for="nav-9">
1010        Error Codes
1011      </label>
1012      <ul class="md-nav__list" data-md-scrollfix>
1013
1014
1015
1016
1017
1018
1019
1020  <li class="md-nav__item">
1021    <a href="ft2-error_enumerations.html" title="Error Enumerations" class="md-nav__link">
1022      Error Enumerations
1023    </a>
1024  </li>
1025
1026
1027
1028
1029
1030
1031
1032  <li class="md-nav__item">
1033    <a href="ft2-error_code_values.html" title="Error Code Values" class="md-nav__link">
1034      Error Code Values
1035    </a>
1036  </li>
1037
1038
1039      </ul>
1040    </nav>
1041  </li>
1042
1043
1044
1045
1046
1047
1048
1049  <li class="md-nav__item md-nav__item--nested">
1050
1051      <input class="md-toggle md-nav__toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10">
1052
1053    <label class="md-nav__link" for="nav-10">
1054      Miscellaneous
1055    </label>
1056    <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
1057      <label class="md-nav__title" for="nav-10">
1058        Miscellaneous
1059      </label>
1060      <ul class="md-nav__list" data-md-scrollfix>
1061
1062
1063
1064
1065
1066
1067
1068  <li class="md-nav__item">
1069    <a href="ft2-gx_validation.html" title="TrueTypeGX/AAT Validation" class="md-nav__link">
1070      TrueTypeGX/AAT Validation
1071    </a>
1072  </li>
1073
1074
1075
1076
1077
1078
1079
1080  <li class="md-nav__item">
1081    <a href="ft2-incremental.html" title="Incremental Loading" class="md-nav__link">
1082      Incremental Loading
1083    </a>
1084  </li>
1085
1086
1087
1088
1089
1090
1091
1092  <li class="md-nav__item">
1093    <a href="ft2-truetype_engine.html" title="The TrueType Engine" class="md-nav__link">
1094      The TrueType Engine
1095    </a>
1096  </li>
1097
1098
1099
1100
1101
1102
1103
1104  <li class="md-nav__item">
1105    <a href="ft2-ot_validation.html" title="OpenType Validation" class="md-nav__link">
1106      OpenType Validation
1107    </a>
1108  </li>
1109
1110
1111      </ul>
1112    </nav>
1113  </li>
1114
1115
1116  </ul>
1117</nav>
1118                  </div>
1119                </div>
1120              </div>
1121
1122
1123              <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
1124                <div class="md-sidebar__scrollwrap">
1125                  <div class="md-sidebar__inner">
1126
1127<nav class="md-nav md-nav--secondary">
1128
1129
1130
1131
1132
1133    <label class="md-nav__title" for="__toc">Table of contents</label>
1134    <ul class="md-nav__list" data-md-scrollfix>
1135
1136        <li class="md-nav__item">
1137  <a href="#synopsis" class="md-nav__link">
1138    Synopsis
1139  </a>
1140
1141</li>
1142
1143        <li class="md-nav__item">
1144  <a href="#ft_raster" class="md-nav__link">
1145    FT_Raster
1146  </a>
1147
1148</li>
1149
1150        <li class="md-nav__item">
1151  <a href="#ft_span" class="md-nav__link">
1152    FT_Span
1153  </a>
1154
1155</li>
1156
1157        <li class="md-nav__item">
1158  <a href="#ft_spanfunc" class="md-nav__link">
1159    FT_SpanFunc
1160  </a>
1161
1162</li>
1163
1164        <li class="md-nav__item">
1165  <a href="#ft_raster_params" class="md-nav__link">
1166    FT_Raster_Params
1167  </a>
1168
1169</li>
1170
1171        <li class="md-nav__item">
1172  <a href="#ft_raster_flag_xxx" class="md-nav__link">
1173    FT_RASTER_FLAG_XXX
1174  </a>
1175
1176</li>
1177
1178        <li class="md-nav__item">
1179  <a href="#ft_raster_newfunc" class="md-nav__link">
1180    FT_Raster_NewFunc
1181  </a>
1182
1183</li>
1184
1185        <li class="md-nav__item">
1186  <a href="#ft_raster_donefunc" class="md-nav__link">
1187    FT_Raster_DoneFunc
1188  </a>
1189
1190</li>
1191
1192        <li class="md-nav__item">
1193  <a href="#ft_raster_resetfunc" class="md-nav__link">
1194    FT_Raster_ResetFunc
1195  </a>
1196
1197</li>
1198
1199        <li class="md-nav__item">
1200  <a href="#ft_raster_setmodefunc" class="md-nav__link">
1201    FT_Raster_SetModeFunc
1202  </a>
1203
1204</li>
1205
1206        <li class="md-nav__item">
1207  <a href="#ft_raster_renderfunc" class="md-nav__link">
1208    FT_Raster_RenderFunc
1209  </a>
1210
1211</li>
1212
1213        <li class="md-nav__item">
1214  <a href="#ft_raster_funcs" class="md-nav__link">
1215    FT_Raster_Funcs
1216  </a>
1217
1218</li>
1219
1220        <li class="md-nav__item">
1221  <a href="#ft_raster_bittest_func" class="md-nav__link">
1222    FT_Raster_BitTest_Func
1223  </a>
1224
1225</li>
1226
1227        <li class="md-nav__item">
1228  <a href="#ft_raster_bitset_func" class="md-nav__link">
1229    FT_Raster_BitSet_Func
1230  </a>
1231
1232</li>
1233
1234
1235
1236
1237
1238    </ul>
1239
1240</nav>
1241                  </div>
1242                </div>
1243              </div>
1244
1245
1246          <div class="md-content">
1247            <article class="md-content__inner md-typeset">
1248
1249
1250
1251                <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; Scanline Converter</p>
1252<hr />
1253<h1 id="scanline-converter">Scanline Converter<a class="headerlink" href="#scanline-converter" title="Permanent link">&para;</a></h1>
1254<h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">&para;</a></h2>
1255<p>This section contains technical definitions.</p>
1256<h2 id="ft_raster">FT_Raster<a class="headerlink" href="#ft_raster" title="Permanent link">&para;</a></h2>
1257<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1258<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">struct</span> FT_RasterRec_*  <b>FT_Raster</b>;
1259</code></pre></div>
1260
1261<p>An opaque handle (pointer) to a raster object. Each object can be used independently to convert an outline into a bitmap or pixmap.</p>
1262<hr>
1263
1264<h2 id="ft_span">FT_Span<a class="headerlink" href="#ft_span" title="Permanent link">&para;</a></h2>
1265<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1266<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">struct</span>  FT_Span_
1267  {
1268    <span class="keyword">short</span>           x;
1269    <span class="keyword">unsigned</span> <span class="keyword">short</span>  len;
1270    <span class="keyword">unsigned</span> <span class="keyword">char</span>   coverage;
1271
1272  } <b>FT_Span</b>;
1273</code></pre></div>
1274
1275<p>A structure used to model a single span of gray pixels when rendering an anti-aliased bitmap.</p>
1276<h4>fields</h4>
1277
1278<table class="fields">
1279<tr><td class="val" id="x">x</td><td class="desc">
1280<p>The span's horizontal start position.</p>
1281</td></tr>
1282<tr><td class="val" id="len">len</td><td class="desc">
1283<p>The span's length in pixels.</p>
1284</td></tr>
1285<tr><td class="val" id="coverage">coverage</td><td class="desc">
1286<p>The span color/coverage, ranging from 0 (background) to 255 (foreground).</p>
1287</td></tr>
1288</table>
1289
1290<h4>note</h4>
1291
1292<p>This structure is used by the span drawing callback type named <code><a href="ft2-raster.html#ft_spanfunc">FT_SpanFunc</a></code> that takes the y&nbsp;coordinate of the span as a parameter.</p>
1293<p>The coverage value is always between 0 and 255. If you want less gray values, the callback function has to reduce them.</p>
1294<hr>
1295
1296<h2 id="ft_spanfunc">FT_SpanFunc<a class="headerlink" href="#ft_spanfunc" title="Permanent link">&para;</a></h2>
1297<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1298<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">void</span>
1299  (*<b>FT_SpanFunc</b>)( <span class="keyword">int</span>             y,
1300                  <span class="keyword">int</span>             count,
1301                  <span class="keyword">const</span> <a href="ft2-raster.html#ft_span">FT_Span</a>*  spans,
1302                  <span class="keyword">void</span>*           user );
1303
1304#<span class="keyword">define</span> FT_Raster_Span_Func  <b>FT_SpanFunc</b>
1305</code></pre></div>
1306
1307<p>A function used as a call-back by the anti-aliased renderer in order to let client applications draw themselves the gray pixel spans on each scan line.</p>
1308<h4>input</h4>
1309
1310<table class="fields">
1311<tr><td class="val" id="y">y</td><td class="desc">
1312<p>The scanline's upward y&nbsp;coordinate.</p>
1313</td></tr>
1314<tr><td class="val" id="count">count</td><td class="desc">
1315<p>The number of spans to draw on this scanline.</p>
1316</td></tr>
1317<tr><td class="val" id="spans">spans</td><td class="desc">
1318<p>A table of <code>count</code> spans to draw on the scanline.</p>
1319</td></tr>
1320<tr><td class="val" id="user">user</td><td class="desc">
1321<p>User-supplied data that is passed to the callback.</p>
1322</td></tr>
1323</table>
1324
1325<h4>note</h4>
1326
1327<p>This callback allows client applications to directly render the gray spans of the anti-aliased bitmap to any kind of surfaces.</p>
1328<p>This can be used to write anti-aliased outlines directly to a given background bitmap, and even perform translucency.</p>
1329<hr>
1330
1331<h2 id="ft_raster_params">FT_Raster_Params<a class="headerlink" href="#ft_raster_params" title="Permanent link">&para;</a></h2>
1332<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1333<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">struct</span>  FT_Raster_Params_
1334  {
1335    <span class="keyword">const</span> <a href="ft2-basic_types.html#ft_bitmap">FT_Bitmap</a>*        target;
1336    <span class="keyword">const</span> <span class="keyword">void</span>*             source;
1337    <span class="keyword">int</span>                     flags;
1338    <a href="ft2-raster.html#ft_spanfunc">FT_SpanFunc</a>             gray_spans;
1339    <a href="ft2-raster.html#ft_spanfunc">FT_SpanFunc</a>             black_spans;  /* unused */
1340    <a href="ft2-raster.html#ft_raster_bittest_func">FT_Raster_BitTest_Func</a>  bit_test;     /* unused */
1341    <a href="ft2-raster.html#ft_raster_bitset_func">FT_Raster_BitSet_Func</a>   bit_set;      /* unused */
1342    <span class="keyword">void</span>*                   user;
1343    <a href="ft2-basic_types.html#ft_bbox">FT_BBox</a>                 clip_box;
1344
1345  } <b>FT_Raster_Params</b>;
1346</code></pre></div>
1347
1348<p>A structure to hold the parameters used by a raster's render function, passed as an argument to <code><a href="ft2-outline_processing.html#ft_outline_render">FT_Outline_Render</a></code>.</p>
1349<h4>fields</h4>
1350
1351<table class="fields">
1352<tr><td class="val" id="target">target</td><td class="desc">
1353<p>The target bitmap.</p>
1354</td></tr>
1355<tr><td class="val" id="source">source</td><td class="desc">
1356<p>A pointer to the source glyph image (e.g., an <code><a href="ft2-outline_processing.html#ft_outline">FT_Outline</a></code>).</p>
1357</td></tr>
1358<tr><td class="val" id="flags">flags</td><td class="desc">
1359<p>The rendering flags.</p>
1360</td></tr>
1361<tr><td class="val" id="gray_spans">gray_spans</td><td class="desc">
1362<p>The gray span drawing callback.</p>
1363</td></tr>
1364<tr><td class="val" id="black_spans">black_spans</td><td class="desc">
1365<p>Unused.</p>
1366</td></tr>
1367<tr><td class="val" id="bit_test">bit_test</td><td class="desc">
1368<p>Unused.</p>
1369</td></tr>
1370<tr><td class="val" id="bit_set">bit_set</td><td class="desc">
1371<p>Unused.</p>
1372</td></tr>
1373<tr><td class="val" id="user">user</td><td class="desc">
1374<p>User-supplied data that is passed to each drawing callback.</p>
1375</td></tr>
1376<tr><td class="val" id="clip_box">clip_box</td><td class="desc">
1377<p>An optional span clipping box expressed in <em>integer</em> pixels (not in 26.6 fixed-point units).</p>
1378</td></tr>
1379</table>
1380
1381<h4>note</h4>
1382
1383<p>The <code><a href="ft2-raster.html#ft_raster_flag_xxx">FT_RASTER_FLAG_AA</a></code> bit flag must be set in the <code>flags</code> to generate an anti-aliased glyph bitmap, otherwise a monochrome bitmap is generated. The <code>target</code> should have appropriate pixel mode and its dimensions define the clipping region.</p>
1384<p>If both <code><a href="ft2-raster.html#ft_raster_flag_xxx">FT_RASTER_FLAG_AA</a></code> and <code><a href="ft2-raster.html#ft_raster_flag_xxx">FT_RASTER_FLAG_DIRECT</a></code> bit flags are set in <code>flags</code>, the raster calls an <code><a href="ft2-raster.html#ft_spanfunc">FT_SpanFunc</a></code> callback <code>gray_spans</code> with <code>user</code> data as an argument ignoring <code>target</code>. This allows direct composition over a pre-existing user surface to perform the span drawing and composition. To optionally clip the spans, set the <code><a href="ft2-raster.html#ft_raster_flag_xxx">FT_RASTER_FLAG_CLIP</a></code> flag and <code>clip_box</code>. The monochrome raster does not support the direct mode.</p>
1385<p>The gray-level rasterizer always uses 256 gray levels. If you want fewer gray levels, you have to use <code><a href="ft2-raster.html#ft_raster_flag_xxx">FT_RASTER_FLAG_DIRECT</a></code> and reduce the levels in the callback function.</p>
1386<hr>
1387
1388<h2 id="ft_raster_flag_xxx">FT_RASTER_FLAG_XXX<a class="headerlink" href="#ft_raster_flag_xxx" title="Permanent link">&para;</a></h2>
1389<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1390<div class = "codehilite"><pre><code>#<span class="keyword">define</span> <a href="ft2-raster.html#ft_raster_flag_default">FT_RASTER_FLAG_DEFAULT</a>  0x0
1391#<span class="keyword">define</span> <a href="ft2-raster.html#ft_raster_flag_aa">FT_RASTER_FLAG_AA</a>       0x1
1392#<span class="keyword">define</span> <a href="ft2-raster.html#ft_raster_flag_direct">FT_RASTER_FLAG_DIRECT</a>   0x2
1393#<span class="keyword">define</span> <a href="ft2-raster.html#ft_raster_flag_clip">FT_RASTER_FLAG_CLIP</a>     0x4
1394
1395  /* these constants are deprecated; use the corresponding */
1396  /* `<b>FT_RASTER_FLAG_XXX</b>` values instead                   */
1397#<span class="keyword">define</span> ft_raster_flag_default  <a href="ft2-raster.html#ft_raster_flag_default">FT_RASTER_FLAG_DEFAULT</a>
1398#<span class="keyword">define</span> ft_raster_flag_aa       <a href="ft2-raster.html#ft_raster_flag_aa">FT_RASTER_FLAG_AA</a>
1399#<span class="keyword">define</span> ft_raster_flag_direct   <a href="ft2-raster.html#ft_raster_flag_direct">FT_RASTER_FLAG_DIRECT</a>
1400#<span class="keyword">define</span> ft_raster_flag_clip     <a href="ft2-raster.html#ft_raster_flag_clip">FT_RASTER_FLAG_CLIP</a>
1401</code></pre></div>
1402
1403<p>A list of bit flag constants as used in the <code>flags</code> field of a <code><a href="ft2-raster.html#ft_raster_params">FT_Raster_Params</a></code> structure.</p>
1404<h4>values</h4>
1405
1406<table class="fields">
1407<tr><td class="val" id="ft_raster_flag_default">FT_RASTER_FLAG_DEFAULT</td><td class="desc">
1408<p>This value is 0.</p>
1409</td></tr>
1410<tr><td class="val" id="ft_raster_flag_aa">FT_RASTER_FLAG_AA</td><td class="desc">
1411<p>This flag is set to indicate that an anti-aliased glyph image should be generated. Otherwise, it will be monochrome (1-bit).</p>
1412</td></tr>
1413<tr><td class="val" id="ft_raster_flag_direct">FT_RASTER_FLAG_DIRECT</td><td class="desc">
1414<p>This flag is set to indicate direct rendering. In this mode, client applications must provide their own span callback. This lets them directly draw or compose over an existing bitmap. If this bit is <em>not</em> set, the target pixmap's buffer <em>must</em> be zeroed before rendering and the output will be clipped to its size.</p>
1415<p>Direct rendering is only possible with anti-aliased glyphs.</p>
1416</td></tr>
1417<tr><td class="val" id="ft_raster_flag_clip">FT_RASTER_FLAG_CLIP</td><td class="desc">
1418<p>This flag is only used in direct rendering mode. If set, the output will be clipped to a box specified in the <code>clip_box</code> field of the <code><a href="ft2-raster.html#ft_raster_params">FT_Raster_Params</a></code> structure. Otherwise, the <code>clip_box</code> is effectively set to the bounding box and all spans are generated.</p>
1419</td></tr>
1420</table>
1421
1422<hr>
1423
1424<h2 id="ft_raster_newfunc">FT_Raster_NewFunc<a class="headerlink" href="#ft_raster_newfunc" title="Permanent link">&para;</a></h2>
1425<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1426<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">int</span>
1427  (*<b>FT_Raster_NewFunc</b>)( <span class="keyword">void</span>*       memory,
1428                        <a href="ft2-raster.html#ft_raster">FT_Raster</a>*  raster );
1429
1430#<span class="keyword">define</span> FT_Raster_New_Func  <b>FT_Raster_NewFunc</b>
1431</code></pre></div>
1432
1433<p>A function used to create a new raster object.</p>
1434<h4>input</h4>
1435
1436<table class="fields">
1437<tr><td class="val" id="memory">memory</td><td class="desc">
1438<p>A handle to the memory allocator.</p>
1439</td></tr>
1440</table>
1441
1442<h4>output</h4>
1443
1444<table class="fields">
1445<tr><td class="val" id="raster">raster</td><td class="desc">
1446<p>A handle to the new raster object.</p>
1447</td></tr>
1448</table>
1449
1450<h4>return</h4>
1451
1452<p>Error code. 0&nbsp;means success.</p>
1453<h4>note</h4>
1454
1455<p>The <code>memory</code> parameter is a typeless pointer in order to avoid un-wanted dependencies on the rest of the FreeType code. In practice, it is an <code><a href="ft2-system_interface.html#ft_memory">FT_Memory</a></code> object, i.e., a handle to the standard FreeType memory allocator. However, this field can be completely ignored by a given raster implementation.</p>
1456<hr>
1457
1458<h2 id="ft_raster_donefunc">FT_Raster_DoneFunc<a class="headerlink" href="#ft_raster_donefunc" title="Permanent link">&para;</a></h2>
1459<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1460<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">void</span>
1461  (*<b>FT_Raster_DoneFunc</b>)( <a href="ft2-raster.html#ft_raster">FT_Raster</a>  raster );
1462
1463#<span class="keyword">define</span> FT_Raster_Done_Func  <b>FT_Raster_DoneFunc</b>
1464</code></pre></div>
1465
1466<p>A function used to destroy a given raster object.</p>
1467<h4>input</h4>
1468
1469<table class="fields">
1470<tr><td class="val" id="raster">raster</td><td class="desc">
1471<p>A handle to the raster object.</p>
1472</td></tr>
1473</table>
1474
1475<hr>
1476
1477<h2 id="ft_raster_resetfunc">FT_Raster_ResetFunc<a class="headerlink" href="#ft_raster_resetfunc" title="Permanent link">&para;</a></h2>
1478<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1479<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">void</span>
1480  (*<b>FT_Raster_ResetFunc</b>)( <a href="ft2-raster.html#ft_raster">FT_Raster</a>       raster,
1481                          <span class="keyword">unsigned</span> <span class="keyword">char</span>*  pool_base,
1482                          <span class="keyword">unsigned</span> <span class="keyword">long</span>   pool_size );
1483
1484#<span class="keyword">define</span> FT_Raster_Reset_Func  <b>FT_Raster_ResetFunc</b>
1485</code></pre></div>
1486
1487<p>FreeType used to provide an area of memory called the &lsquo;render pool&rsquo; available to all registered rasterizers. This was not thread safe, however, and now FreeType never allocates this pool.</p>
1488<p>This function is called after a new raster object is created.</p>
1489<h4>input</h4>
1490
1491<table class="fields">
1492<tr><td class="val" id="raster">raster</td><td class="desc">
1493<p>A handle to the new raster object.</p>
1494</td></tr>
1495<tr><td class="val" id="pool_base">pool_base</td><td class="desc">
1496<p>Previously, the address in memory of the render pool. Set this to <code>NULL</code>.</p>
1497</td></tr>
1498<tr><td class="val" id="pool_size">pool_size</td><td class="desc">
1499<p>Previously, the size in bytes of the render pool. Set this to 0.</p>
1500</td></tr>
1501</table>
1502
1503<h4>note</h4>
1504
1505<p>Rasterizers should rely on dynamic or stack allocation if they want to (a handle to the memory allocator is passed to the rasterizer constructor).</p>
1506<hr>
1507
1508<h2 id="ft_raster_setmodefunc">FT_Raster_SetModeFunc<a class="headerlink" href="#ft_raster_setmodefunc" title="Permanent link">&para;</a></h2>
1509<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1510<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">int</span>
1511  (*<b>FT_Raster_SetModeFunc</b>)( <a href="ft2-raster.html#ft_raster">FT_Raster</a>      raster,
1512                            <span class="keyword">unsigned</span> <span class="keyword">long</span>  mode,
1513                            <span class="keyword">void</span>*          args );
1514
1515#<span class="keyword">define</span> FT_Raster_Set_Mode_Func  <b>FT_Raster_SetModeFunc</b>
1516</code></pre></div>
1517
1518<p>This function is a generic facility to change modes or attributes in a given raster. This can be used for debugging purposes, or simply to allow implementation-specific &lsquo;features&rsquo; in a given raster module.</p>
1519<h4>input</h4>
1520
1521<table class="fields">
1522<tr><td class="val" id="raster">raster</td><td class="desc">
1523<p>A handle to the new raster object.</p>
1524</td></tr>
1525<tr><td class="val" id="mode">mode</td><td class="desc">
1526<p>A 4-byte tag used to name the mode or property.</p>
1527</td></tr>
1528<tr><td class="val" id="args">args</td><td class="desc">
1529<p>A pointer to the new mode/property to use.</p>
1530</td></tr>
1531</table>
1532
1533<hr>
1534
1535<h2 id="ft_raster_renderfunc">FT_Raster_RenderFunc<a class="headerlink" href="#ft_raster_renderfunc" title="Permanent link">&para;</a></h2>
1536<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1537<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">int</span>
1538  (*<b>FT_Raster_RenderFunc</b>)( <a href="ft2-raster.html#ft_raster">FT_Raster</a>                raster,
1539                           <span class="keyword">const</span> <a href="ft2-raster.html#ft_raster_params">FT_Raster_Params</a>*  params );
1540
1541#<span class="keyword">define</span> FT_Raster_Render_Func  <b>FT_Raster_RenderFunc</b>
1542</code></pre></div>
1543
1544<p>Invoke a given raster to scan-convert a given glyph image into a target bitmap.</p>
1545<h4>input</h4>
1546
1547<table class="fields">
1548<tr><td class="val" id="raster">raster</td><td class="desc">
1549<p>A handle to the raster object.</p>
1550</td></tr>
1551<tr><td class="val" id="params">params</td><td class="desc">
1552<p>A pointer to an <code><a href="ft2-raster.html#ft_raster_params">FT_Raster_Params</a></code> structure used to store the rendering parameters.</p>
1553</td></tr>
1554</table>
1555
1556<h4>return</h4>
1557
1558<p>Error code. 0&nbsp;means success.</p>
1559<h4>note</h4>
1560
1561<p>The exact format of the source image depends on the raster's glyph format defined in its <code><a href="ft2-raster.html#ft_raster_funcs">FT_Raster_Funcs</a></code> structure. It can be an <code><a href="ft2-outline_processing.html#ft_outline">FT_Outline</a></code> or anything else in order to support a large array of glyph formats.</p>
1562<p>Note also that the render function can fail and return a <code>FT_Err_Unimplemented_Feature</code> error code if the raster used does not support direct composition.</p>
1563<hr>
1564
1565<h2 id="ft_raster_funcs">FT_Raster_Funcs<a class="headerlink" href="#ft_raster_funcs" title="Permanent link">&para;</a></h2>
1566<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1567<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">struct</span>  FT_Raster_Funcs_
1568  {
1569    <a href="ft2-basic_types.html#ft_glyph_format">FT_Glyph_Format</a>        glyph_format;
1570
1571    <a href="ft2-raster.html#ft_raster_newfunc">FT_Raster_NewFunc</a>      raster_new;
1572    <a href="ft2-raster.html#ft_raster_resetfunc">FT_Raster_ResetFunc</a>    raster_reset;
1573    <a href="ft2-raster.html#ft_raster_setmodefunc">FT_Raster_SetModeFunc</a>  raster_set_mode;
1574    <a href="ft2-raster.html#ft_raster_renderfunc">FT_Raster_RenderFunc</a>   raster_render;
1575    <a href="ft2-raster.html#ft_raster_donefunc">FT_Raster_DoneFunc</a>     raster_done;
1576
1577  } <b>FT_Raster_Funcs</b>;
1578</code></pre></div>
1579
1580<p>A structure used to describe a given raster class to the library.</p>
1581<h4>fields</h4>
1582
1583<table class="fields">
1584<tr><td class="val" id="glyph_format">glyph_format</td><td class="desc">
1585<p>The supported glyph format for this raster.</p>
1586</td></tr>
1587<tr><td class="val" id="raster_new">raster_new</td><td class="desc">
1588<p>The raster constructor.</p>
1589</td></tr>
1590<tr><td class="val" id="raster_reset">raster_reset</td><td class="desc">
1591<p>Used to reset the render pool within the raster.</p>
1592</td></tr>
1593<tr><td class="val" id="raster_render">raster_render</td><td class="desc">
1594<p>A function to render a glyph into a given bitmap.</p>
1595</td></tr>
1596<tr><td class="val" id="raster_done">raster_done</td><td class="desc">
1597<p>The raster destructor.</p>
1598</td></tr>
1599</table>
1600
1601<hr>
1602
1603<h2 id="ft_raster_bittest_func">FT_Raster_BitTest_Func<a class="headerlink" href="#ft_raster_bittest_func" title="Permanent link">&para;</a></h2>
1604<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1605<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">int</span>
1606  (*<b>FT_Raster_BitTest_Func</b>)( <span class="keyword">int</span>    y,
1607                             <span class="keyword">int</span>    x,
1608                             <span class="keyword">void</span>*  user );
1609</code></pre></div>
1610
1611<p>Deprecated, unimplemented.</p>
1612<hr>
1613
1614<h2 id="ft_raster_bitset_func">FT_Raster_BitSet_Func<a class="headerlink" href="#ft_raster_bitset_func" title="Permanent link">&para;</a></h2>
1615<p>Defined in FT_IMAGE_H (freetype/ftimage.h).</p>
1616<div class = "codehilite"><pre><code>  <span class="keyword">typedef</span> <span class="keyword">void</span>
1617  (*<b>FT_Raster_BitSet_Func</b>)( <span class="keyword">int</span>    y,
1618                            <span class="keyword">int</span>    x,
1619                            <span class="keyword">void</span>*  user );
1620</code></pre></div>
1621
1622<p>Deprecated, unimplemented.</p>
1623<hr>
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634            </article>
1635          </div>
1636        </div>
1637      </main>
1638
1639
1640<footer class="md-footer">
1641
1642    <div class="md-footer-nav">
1643      <nav class="md-footer-nav__inner md-grid">
1644
1645          <a href="ft2-bitmap_handling.html" title="Bitmap Handling" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
1646            <div class="md-flex__cell md-flex__cell--shrink">
1647              <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
1648            </div>
1649            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1650              <span class="md-flex__ellipsis">
1651                <span class="md-footer-nav__direction">
1652                  Previous
1653                </span>
1654                Bitmap Handling
1655              </span>
1656            </div>
1657          </a>
1658
1659
1660          <a href="ft2-glyph_stroker.html" title="Glyph Stroker" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
1661            <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1662              <span class="md-flex__ellipsis">
1663                <span class="md-footer-nav__direction">
1664                  Next
1665                </span>
1666                Glyph Stroker
1667              </span>
1668            </div>
1669            <div class="md-flex__cell md-flex__cell--shrink">
1670              <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
1671            </div>
1672          </a>
1673
1674      </nav>
1675    </div>
1676
1677  <div class="md-footer-meta md-typeset">
1678    <div class="md-footer-meta__inner md-grid">
1679      <div class="md-footer-copyright">
1680
1681          <div class="md-footer-copyright__highlight">
1682            Copyright 2020 <a href = "https://www.freetype.org/license.html">The FreeType Project</a>.
1683          </div>
1684
1685        powered by
1686        <a href="https://www.mkdocs.org" target="_blank" rel="noopener">MkDocs</a>
1687        and
1688        <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
1689          Material for MkDocs</a>
1690      </div>
1691
1692    </div>
1693  </div>
1694</footer>
1695
1696    </div>
1697
1698      <script src="assets/javascripts/application.c33a9706.js"></script>
1699
1700      <script>app.initialize({version:"1.1",url:{base:"."}})</script>
1701
1702        <script src="javascripts/extra.js"></script>
1703
1704
1705  </body>
1706</html>