Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(167)

Side by Side Diff: include/freetype/internal/sfnt.h

Issue 89753003: Update freetype to latest version of ASOP. (Closed) Base URL: https://chromium.googlesource.com/chromium/src/third_party/freetype.git@master
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « include/freetype/internal/services/svprop.h ('k') | include/freetype/internal/t1types.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /***************************************************************************/ 1 /***************************************************************************/
2 /* */ 2 /* */
3 /* sfnt.h */ 3 /* sfnt.h */
4 /* */ 4 /* */
5 /* High-level `sfnt' driver interface (specification). */ 5 /* High-level `sfnt' driver interface (specification). */
6 /* */ 6 /* */
7 /* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006 by */ 7 /* Copyright 1996-2006, 2009, 2012-2013 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
9 /* */ 9 /* */
10 /* This file is part of the FreeType project, and may only be used, */ 10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */ 11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */ 13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */ 14 /* understand and accept it fully. */
15 /* */ 15 /* */
16 /***************************************************************************/ 16 /***************************************************************************/
17 17
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 /* <Input> */ 118 /* <Input> */
119 /* face :: A handle to the target face object. */ 119 /* face :: A handle to the target face object. */
120 /* */ 120 /* */
121 /* <Note> */ 121 /* <Note> */
122 /* This function does NOT destroy the face object. */ 122 /* This function does NOT destroy the face object. */
123 /* */ 123 /* */
124 typedef void 124 typedef void
125 (*TT_Done_Face_Func)( TT_Face face ); 125 (*TT_Done_Face_Func)( TT_Face face );
126 126
127 127
128 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
129
130 /*************************************************************************/
131 /* */
132 /* <FuncType> */
133 /* TT_Load_SFNT_HeaderRec_Func */
134 /* */
135 /* <Description> */
136 /* Loads the header of a SFNT font file. Supports collections. */
137 /* */
138 /* <Input> */
139 /* face :: A handle to the target face object. */
140 /* */
141 /* stream :: The input stream. */
142 /* */
143 /* face_index :: The index of the TrueType font, if we are opening a */
144 /* collection. */
145 /* */
146 /* <Output> */
147 /* sfnt :: The SFNT header. */
148 /* */
149 /* <Return> */
150 /* FreeType error code. 0 means success. */
151 /* */
152 /* <Note> */
153 /* The stream cursor must be at the font file's origin. */
154 /* */
155 /* This function recognizes fonts embedded in a `TrueType */
156 /* collection'. */
157 /* */
158 /* This function checks that the header is valid by looking at the */
159 /* values of `search_range', `entry_selector', and `range_shift'. */
160 /* */
161 typedef FT_Error
162 (*TT_Load_SFNT_HeaderRec_Func)( TT_Face face,
163 FT_Stream stream,
164 FT_Long face_index,
165 SFNT_Header sfnt );
166
167
168 /*************************************************************************/ 128 /*************************************************************************/
169 /* */ 129 /* */
170 /* <FuncType> */ 130 /* <FuncType> */
171 /* TT_Load_Directory_Func */
172 /* */
173 /* <Description> */
174 /* Loads the table directory into a face object. */
175 /* */
176 /* <Input> */
177 /* face :: A handle to the target face object. */
178 /* */
179 /* stream :: The input stream. */
180 /* */
181 /* sfnt :: The SFNT header. */
182 /* */
183 /* <Return> */
184 /* FreeType error code. 0 means success. */
185 /* */
186 /* <Note> */
187 /* The stream cursor must be on the first byte after the 4-byte font */
188 /* format tag. This is the case just after a call to */
189 /* TT_Load_Format_Tag(). */
190 /* */
191 typedef FT_Error
192 (*TT_Load_Directory_Func)( TT_Face face,
193 FT_Stream stream,
194 SFNT_Header sfnt );
195
196 #endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
197
198
199 /*************************************************************************/
200 /* */
201 /* <FuncType> */
202 /* TT_Load_Any_Func */ 131 /* TT_Load_Any_Func */
203 /* */ 132 /* */
204 /* <Description> */ 133 /* <Description> */
205 /* Load any font table into client memory. */ 134 /* Load any font table into client memory. */
206 /* */ 135 /* */
207 /* <Input> */ 136 /* <Input> */
208 /* face :: The face object to look for. */ 137 /* face :: The face object to look for. */
209 /* */ 138 /* */
210 /* tag :: The tag of table to load. Use the value 0 if you want */ 139 /* tag :: The tag of table to load. Use the value 0 if you want */
211 /* to access the whole font file, else set this parameter */ 140 /* to access the whole font file, else set this parameter */
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 typedef FT_Error 285 typedef FT_Error
357 (*TT_Load_SBit_Image_Func)( TT_Face face, 286 (*TT_Load_SBit_Image_Func)( TT_Face face,
358 FT_ULong strike_index, 287 FT_ULong strike_index,
359 FT_UInt glyph_index, 288 FT_UInt glyph_index,
360 FT_UInt load_flags, 289 FT_UInt load_flags,
361 FT_Stream stream, 290 FT_Stream stream,
362 FT_Bitmap *amap, 291 FT_Bitmap *amap,
363 TT_SBit_MetricsRec *ametrics ); 292 TT_SBit_MetricsRec *ametrics );
364 293
365 294
366 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
367
368 /*************************************************************************/
369 /* */
370 /* <FuncType> */
371 /* TT_Set_SBit_Strike_OldFunc */
372 /* */
373 /* <Description> */
374 /* Select an sbit strike for a given size request. */
375 /* */
376 /* <Input> */
377 /* face :: The target face object. */
378 /* */
379 /* req :: The size request. */
380 /* */
381 /* <Output> */
382 /* astrike_index :: The index of the sbit strike. */
383 /* */
384 /* <Return> */
385 /* FreeType error code. 0 means success. Returns an error if no */
386 /* sbit strike exists for the selected ppem values. */
387 /* */
388 typedef FT_Error
389 (*TT_Set_SBit_Strike_OldFunc)( TT_Face face,
390 FT_UInt x_ppem,
391 FT_UInt y_ppem,
392 FT_ULong* astrike_index );
393
394
395 /*************************************************************************/ 295 /*************************************************************************/
396 /* */ 296 /* */
397 /* <FuncType> */ 297 /* <FuncType> */
398 /* TT_CharMap_Load_Func */
399 /* */
400 /* <Description> */
401 /* Loads a given TrueType character map into memory. */
402 /* */
403 /* <Input> */
404 /* face :: A handle to the parent face object. */
405 /* */
406 /* stream :: A handle to the current stream object. */
407 /* */
408 /* <InOut> */
409 /* cmap :: A pointer to a cmap object. */
410 /* */
411 /* <Return> */
412 /* FreeType error code. 0 means success. */
413 /* */
414 /* <Note> */
415 /* The function assumes that the stream is already in use (i.e., */
416 /* opened). In case of error, all partially allocated tables are */
417 /* released. */
418 /* */
419 typedef FT_Error
420 (*TT_CharMap_Load_Func)( TT_Face face,
421 void* cmap,
422 FT_Stream input );
423
424
425 /*************************************************************************/
426 /* */
427 /* <FuncType> */
428 /* TT_CharMap_Free_Func */
429 /* */
430 /* <Description> */
431 /* Destroys a character mapping table. */
432 /* */
433 /* <Input> */
434 /* face :: A handle to the parent face object. */
435 /* */
436 /* cmap :: A handle to a cmap object. */
437 /* */
438 /* <Return> */
439 /* FreeType error code. 0 means success. */
440 /* */
441 typedef FT_Error
442 (*TT_CharMap_Free_Func)( TT_Face face,
443 void* cmap );
444
445 #endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
446
447
448 /*************************************************************************/
449 /* */
450 /* <FuncType> */
451 /* TT_Set_SBit_Strike_Func */ 298 /* TT_Set_SBit_Strike_Func */
452 /* */ 299 /* */
453 /* <Description> */ 300 /* <Description> */
454 /* Select an sbit strike for a given size request. */ 301 /* Select an sbit strike for a given size request. */
455 /* */ 302 /* */
456 /* <Input> */ 303 /* <Input> */
457 /* face :: The target face object. */ 304 /* face :: The target face object. */
458 /* */ 305 /* */
459 /* req :: The size request. */ 306 /* req :: The size request. */
460 /* */ 307 /* */
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
650 { 497 {
651 TT_Loader_GotoTableFunc goto_table; 498 TT_Loader_GotoTableFunc goto_table;
652 499
653 TT_Init_Face_Func init_face; 500 TT_Init_Face_Func init_face;
654 TT_Load_Face_Func load_face; 501 TT_Load_Face_Func load_face;
655 TT_Done_Face_Func done_face; 502 TT_Done_Face_Func done_face;
656 FT_Module_Requester get_interface; 503 FT_Module_Requester get_interface;
657 504
658 TT_Load_Any_Func load_any; 505 TT_Load_Any_Func load_any;
659 506
660 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
661 TT_Load_SFNT_HeaderRec_Func load_sfnt_header;
662 TT_Load_Directory_Func load_directory;
663 #endif
664
665 /* these functions are called by `load_face' but they can also */ 507 /* these functions are called by `load_face' but they can also */
666 /* be called from external modules, if there is a need to do so */ 508 /* be called from external modules, if there is a need to do so */
667 TT_Load_Table_Func load_head; 509 TT_Load_Table_Func load_head;
668 TT_Load_Metrics_Func load_hhea; 510 TT_Load_Metrics_Func load_hhea;
669 TT_Load_Table_Func load_cmap; 511 TT_Load_Table_Func load_cmap;
670 TT_Load_Table_Func load_maxp; 512 TT_Load_Table_Func load_maxp;
671 TT_Load_Table_Func load_os2; 513 TT_Load_Table_Func load_os2;
672 TT_Load_Table_Func load_post; 514 TT_Load_Table_Func load_post;
673 515
674 TT_Load_Table_Func load_name; 516 TT_Load_Table_Func load_name;
675 TT_Free_Table_Func free_name; 517 TT_Free_Table_Func free_name;
676 518
677 /* optional tables */
678 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
679 TT_Load_Table_Func load_hdmx_stub;
680 TT_Free_Table_Func free_hdmx_stub;
681 #endif
682
683 /* this field was called `load_kerning' up to version 2.1.10 */ 519 /* this field was called `load_kerning' up to version 2.1.10 */
684 TT_Load_Table_Func load_kern; 520 TT_Load_Table_Func load_kern;
685 521
686 TT_Load_Table_Func load_gasp; 522 TT_Load_Table_Func load_gasp;
687 TT_Load_Table_Func load_pclt; 523 TT_Load_Table_Func load_pclt;
688 524
689 /* see `ttload.h'; this field was called `load_bitmap_header' up to */ 525 /* see `ttload.h'; this field was called `load_bitmap_header' up to */
690 /* version 2.1.10 */ 526 /* version 2.1.10 */
691 TT_Load_Table_Func load_bhed; 527 TT_Load_Table_Func load_bhed;
692 528
693 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
694
695 /* see `ttsbit.h' */
696 TT_Set_SBit_Strike_OldFunc set_sbit_strike_stub;
697 TT_Load_Table_Func load_sbits_stub;
698
699 /*
700 * The following two fields appeared in version 2.1.8, and were placed
701 * between `load_sbits' and `load_sbit_image'. We support them as a
702 * special exception since they are used by Xfont library within the
703 * X.Org xserver, and because the probability that other rogue clients
704 * use the other version 2.1.7 fields below is _extremely_ low.
705 *
706 * Note that this forces us to disable an interesting memory-saving
707 * optimization though...
708 */
709
710 TT_Find_SBit_Image_Func find_sbit_image;
711 TT_Load_SBit_Metrics_Func load_sbit_metrics;
712
713 #endif
714
715 TT_Load_SBit_Image_Func load_sbit_image; 529 TT_Load_SBit_Image_Func load_sbit_image;
716 530
717 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
718 TT_Free_Table_Func free_sbits_stub;
719 #endif
720
721 /* see `ttpost.h' */ 531 /* see `ttpost.h' */
722 TT_Get_PS_Name_Func get_psname; 532 TT_Get_PS_Name_Func get_psname;
723 TT_Free_Table_Func free_psnames; 533 TT_Free_Table_Func free_psnames;
724 534
725 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
726 TT_CharMap_Load_Func load_charmap_stub;
727 TT_CharMap_Free_Func free_charmap_stub;
728 #endif
729
730 /* starting here, the structure differs from version 2.1.7 */ 535 /* starting here, the structure differs from version 2.1.7 */
731 536
732 /* this field was introduced in version 2.1.8, named `get_psname' */ 537 /* this field was introduced in version 2.1.8, named `get_psname' */
733 TT_Face_GetKerningFunc get_kerning; 538 TT_Face_GetKerningFunc get_kerning;
734 539
735 /* new elements introduced after version 2.1.10 */ 540 /* new elements introduced after version 2.1.10 */
736 541
737 /* load the font directory, i.e., the offset table and */ 542 /* load the font directory, i.e., the offset table and */
738 /* the table directory */ 543 /* the table directory */
739 TT_Load_Table_Func load_font_dir; 544 TT_Load_Table_Func load_font_dir;
740 TT_Load_Metrics_Func load_hmtx; 545 TT_Load_Metrics_Func load_hmtx;
741 546
742 TT_Load_Table_Func load_eblc; 547 TT_Load_Table_Func load_eblc;
743 TT_Free_Table_Func free_eblc; 548 TT_Free_Table_Func free_eblc;
744 549
745 TT_Set_SBit_Strike_Func set_sbit_strike; 550 TT_Set_SBit_Strike_Func set_sbit_strike;
746 TT_Load_Strike_Metrics_Func load_strike_metrics; 551 TT_Load_Strike_Metrics_Func load_strike_metrics;
747 552
748 TT_Get_Metrics_Func get_metrics; 553 TT_Get_Metrics_Func get_metrics;
749 554
750 } SFNT_Interface; 555 } SFNT_Interface;
751 556
752 557
753 /* transitional */ 558 /* transitional */
754 typedef SFNT_Interface* SFNT_Service; 559 typedef SFNT_Interface* SFNT_Service;
755 560
756 #ifndef FT_CONFIG_OPTION_PIC 561 #ifndef FT_CONFIG_OPTION_PIC
757 562
758 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS 563 #define FT_DEFINE_SFNT_INTERFACE( \
759 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a) \ 564 class_, \
760 a, 565 goto_table_, \
761 #else 566 init_face_, \
762 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a) 567 load_face_, \
763 #endif 568 done_face_, \
764 #define FT_INTERNAL(a) \ 569 get_interface_, \
765 a, 570 load_any_, \
766 571 load_head_, \
767 #define FT_DEFINE_SFNT_INTERFACE(class_, \ 572 load_hhea_, \
768 goto_table_, init_face_, load_face_, done_face_, get_interface_, \ 573 load_cmap_, \
769 load_any_, load_sfnt_header_, load_directory_, load_head_, \ 574 load_maxp_, \
770 load_hhea_, load_cmap_, load_maxp_, load_os2_, load_post_, \ 575 load_os2_, \
771 load_name_, free_name_, load_hdmx_stub_, free_hdmx_stub_, \ 576 load_post_, \
772 load_kern_, load_gasp_, load_pclt_, load_bhed_, \ 577 load_name_, \
773 set_sbit_strike_stub_, load_sbits_stub_, find_sbit_image_, \ 578 free_name_, \
774 load_sbit_metrics_, load_sbit_image_, free_sbits_stub_, \ 579 load_kern_, \
775 get_psname_, free_psnames_, load_charmap_stub_, free_charmap_stub_, \ 580 load_gasp_, \
776 get_kerning_, load_font_dir_, load_hmtx_, load_eblc_, free_eblc_, \ 581 load_pclt_, \
777 set_sbit_strike_, load_strike_metrics_, get_metrics_ ) \ 582 load_bhed_, \
778 static const SFNT_Interface class_ = \ 583 load_sbit_image_, \
779 { \ 584 get_psname_, \
780 FT_INTERNAL(goto_table_) \ 585 free_psnames_, \
781 FT_INTERNAL(init_face_) \ 586 get_kerning_, \
782 FT_INTERNAL(load_face_) \ 587 load_font_dir_, \
783 FT_INTERNAL(done_face_) \ 588 load_hmtx_, \
784 FT_INTERNAL(get_interface_) \ 589 load_eblc_, \
785 FT_INTERNAL(load_any_) \ 590 free_eblc_, \
786 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sfnt_header_) \ 591 set_sbit_strike_, \
787 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_directory_) \ 592 load_strike_metrics_, \
788 FT_INTERNAL(load_head_) \ 593 get_metrics_ ) \
789 FT_INTERNAL(load_hhea_) \ 594 static const SFNT_Interface class_ = \
790 FT_INTERNAL(load_cmap_) \ 595 { \
791 FT_INTERNAL(load_maxp_) \ 596 goto_table_, \
792 FT_INTERNAL(load_os2_) \ 597 init_face_, \
793 FT_INTERNAL(load_post_) \ 598 load_face_, \
794 FT_INTERNAL(load_name_) \ 599 done_face_, \
795 FT_INTERNAL(free_name_) \ 600 get_interface_, \
796 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_hdmx_stub_) \ 601 load_any_, \
797 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_hdmx_stub_) \ 602 load_head_, \
798 FT_INTERNAL(load_kern_) \ 603 load_hhea_, \
799 FT_INTERNAL(load_gasp_) \ 604 load_cmap_, \
800 FT_INTERNAL(load_pclt_) \ 605 load_maxp_, \
801 FT_INTERNAL(load_bhed_) \ 606 load_os2_, \
802 FT_DEFINE_DRIVERS_OLD_INTERNAL(set_sbit_strike_stub_) \ 607 load_post_, \
803 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbits_stub_) \ 608 load_name_, \
804 FT_DEFINE_DRIVERS_OLD_INTERNAL(find_sbit_image_) \ 609 free_name_, \
805 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbit_metrics_) \ 610 load_kern_, \
806 FT_INTERNAL(load_sbit_image_) \ 611 load_gasp_, \
807 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_sbits_stub_) \ 612 load_pclt_, \
808 FT_INTERNAL(get_psname_) \ 613 load_bhed_, \
809 FT_INTERNAL(free_psnames_) \ 614 load_sbit_image_, \
810 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_charmap_stub_) \ 615 get_psname_, \
811 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_charmap_stub_) \ 616 free_psnames_, \
812 FT_INTERNAL(get_kerning_) \ 617 get_kerning_, \
813 FT_INTERNAL(load_font_dir_) \ 618 load_font_dir_, \
814 FT_INTERNAL(load_hmtx_) \ 619 load_hmtx_, \
815 FT_INTERNAL(load_eblc_) \ 620 load_eblc_, \
816 FT_INTERNAL(free_eblc_) \ 621 free_eblc_, \
817 FT_INTERNAL(set_sbit_strike_) \ 622 set_sbit_strike_, \
818 FT_INTERNAL(load_strike_metrics_) \ 623 load_strike_metrics_, \
819 FT_INTERNAL(get_metrics_) \ 624 get_metrics_, \
820 }; 625 };
821 626
822 #else /* FT_CONFIG_OPTION_PIC */ 627 #else /* FT_CONFIG_OPTION_PIC */
823 628
824 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS 629 #define FT_INTERNAL( a, a_ ) \
825 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a, a_) \ 630 clazz->a = a_;
826 clazz->a = a_;
827 #else
828 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a, a_)
829 #endif
830 #define FT_INTERNAL(a, a_) \
831 clazz->a = a_;
832 631
833 #define FT_DEFINE_SFNT_INTERFACE(class_, \ 632 #define FT_DEFINE_SFNT_INTERFACE( \
834 goto_table_, init_face_, load_face_, done_face_, get_interface_, \ 633 class_, \
835 load_any_, load_sfnt_header_, load_directory_, load_head_, \ 634 goto_table_, \
836 load_hhea_, load_cmap_, load_maxp_, load_os2_, load_post_, \ 635 init_face_, \
837 load_name_, free_name_, load_hdmx_stub_, free_hdmx_stub_, \ 636 load_face_, \
838 load_kern_, load_gasp_, load_pclt_, load_bhed_, \ 637 done_face_, \
839 set_sbit_strike_stub_, load_sbits_stub_, find_sbit_image_, \ 638 get_interface_, \
840 load_sbit_metrics_, load_sbit_image_, free_sbits_stub_, \ 639 load_any_, \
841 get_psname_, free_psnames_, load_charmap_stub_, free_charmap_stub_, \ 640 load_head_, \
842 get_kerning_, load_font_dir_, load_hmtx_, load_eblc_, free_eblc_, \ 641 load_hhea_, \
843 set_sbit_strike_, load_strike_metrics_, get_metrics_ ) \ 642 load_cmap_, \
844 void \ 643 load_maxp_, \
845 FT_Init_Class_##class_( FT_Library library, SFNT_Interface* clazz ) \ 644 load_os2_, \
846 { \ 645 load_post_, \
847 FT_UNUSED(library); \ 646 load_name_, \
848 FT_INTERNAL(goto_table,goto_table_) \ 647 free_name_, \
849 FT_INTERNAL(init_face,init_face_) \ 648 load_kern_, \
850 FT_INTERNAL(load_face,load_face_) \ 649 load_gasp_, \
851 FT_INTERNAL(done_face,done_face_) \ 650 load_pclt_, \
852 FT_INTERNAL(get_interface,get_interface_) \ 651 load_bhed_, \
853 FT_INTERNAL(load_any,load_any_) \ 652 load_sbit_image_, \
854 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sfnt_header,load_sfnt_header_) \ 653 get_psname_, \
855 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_directory,load_directory_) \ 654 free_psnames_, \
856 FT_INTERNAL(load_head,load_head_) \ 655 get_kerning_, \
857 FT_INTERNAL(load_hhea,load_hhea_) \ 656 load_font_dir_, \
858 FT_INTERNAL(load_cmap,load_cmap_) \ 657 load_hmtx_, \
859 FT_INTERNAL(load_maxp,load_maxp_) \ 658 load_eblc_, \
860 FT_INTERNAL(load_os2,load_os2_) \ 659 free_eblc_, \
861 FT_INTERNAL(load_post,load_post_) \ 660 set_sbit_strike_, \
862 FT_INTERNAL(load_name,load_name_) \ 661 load_strike_metrics_, \
863 FT_INTERNAL(free_name,free_name_) \ 662 get_metrics_ ) \
864 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_hdmx_stub,load_hdmx_stub_) \ 663 void \
865 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_hdmx_stub,free_hdmx_stub_) \ 664 FT_Init_Class_ ## class_( FT_Library library, \
866 FT_INTERNAL(load_kern,load_kern_) \ 665 SFNT_Interface* clazz ) \
867 FT_INTERNAL(load_gasp,load_gasp_) \ 666 { \
868 FT_INTERNAL(load_pclt,load_pclt_) \ 667 FT_UNUSED( library ); \
869 FT_INTERNAL(load_bhed,load_bhed_) \ 668 \
870 FT_DEFINE_DRIVERS_OLD_INTERNAL(set_sbit_strike_stub,set_sbit_strike_stub_) \ 669 clazz->goto_table = goto_table_; \
871 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbits_stub,load_sbits_stub_) \ 670 clazz->init_face = init_face_; \
872 FT_DEFINE_DRIVERS_OLD_INTERNAL(find_sbit_image,find_sbit_image_) \ 671 clazz->load_face = load_face_; \
873 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbit_metrics,load_sbit_metrics_) \ 672 clazz->done_face = done_face_; \
874 FT_INTERNAL(load_sbit_image,load_sbit_image_) \ 673 clazz->get_interface = get_interface_; \
875 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_sbits_stub,free_sbits_stub_) \ 674 clazz->load_any = load_any_; \
876 FT_INTERNAL(get_psname,get_psname_) \ 675 clazz->load_head = load_head_; \
877 FT_INTERNAL(free_psnames,free_psnames_) \ 676 clazz->load_hhea = load_hhea_; \
878 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_charmap_stub,load_charmap_stub_) \ 677 clazz->load_cmap = load_cmap_; \
879 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_charmap_stub,free_charmap_stub_) \ 678 clazz->load_maxp = load_maxp_; \
880 FT_INTERNAL(get_kerning,get_kerning_) \ 679 clazz->load_os2 = load_os2_; \
881 FT_INTERNAL(load_font_dir,load_font_dir_) \ 680 clazz->load_post = load_post_; \
882 FT_INTERNAL(load_hmtx,load_hmtx_) \ 681 clazz->load_name = load_name_; \
883 FT_INTERNAL(load_eblc,load_eblc_) \ 682 clazz->free_name = free_name_; \
884 FT_INTERNAL(free_eblc,free_eblc_) \ 683 clazz->load_kern = load_kern_; \
885 FT_INTERNAL(set_sbit_strike,set_sbit_strike_) \ 684 clazz->load_gasp = load_gasp_; \
886 FT_INTERNAL(load_strike_metrics,load_strike_metrics_) \ 685 clazz->load_pclt = load_pclt_; \
887 FT_INTERNAL(get_metrics,get_metrics_) \ 686 clazz->load_bhed = load_bhed_; \
687 clazz->load_sbit_image = load_sbit_image_; \
688 clazz->get_psname = get_psname_; \
689 clazz->free_psnames = free_psnames_; \
690 clazz->get_kerning = get_kerning_; \
691 clazz->load_font_dir = load_font_dir_; \
692 clazz->load_hmtx = load_hmtx_; \
693 clazz->load_eblc = load_eblc_; \
694 clazz->free_eblc = free_eblc_; \
695 clazz->set_sbit_strike = set_sbit_strike_; \
696 clazz->load_strike_metrics = load_strike_metrics_; \
697 clazz->get_metrics = get_metrics_; \
888 } 698 }
889 699
890 #endif /* FT_CONFIG_OPTION_PIC */ 700 #endif /* FT_CONFIG_OPTION_PIC */
891 701
892 FT_END_HEADER 702 FT_END_HEADER
893 703
894 #endif /* __SFNT_H__ */ 704 #endif /* __SFNT_H__ */
895 705
896 706
897 /* END */ 707 /* END */
OLDNEW
« no previous file with comments | « include/freetype/internal/services/svprop.h ('k') | include/freetype/internal/t1types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698