610 {
615
616
618
620
623 {
624 FT_ERROR((
"tt_face_init: cannot access `sfnt' module\n" ));
627 }
628
629
632
633
636
637
639
642
643
644
645
646 if (
face->format_tag != 0x00010000L &&
647 face->format_tag != 0x00020000L &&
651 {
653 goto Bad_Format;
654 }
655
656#ifdef TT_USE_BYTECODE_INTERPRETER
658#endif
659
660
661 if ( face_index < 0 )
663
664
668
671
675
677 {
678#ifdef FT_CONFIG_OPTION_INCREMENTAL
679 if ( !ttface->
internal->incremental_interface )
680#endif
681 {
683
684
685
690 }
691
692
696
700
704
705
706#ifdef FT_CONFIG_OPTION_INCREMENTAL
707 if ( !ttface->
internal->incremental_interface )
708#endif
709 {
711 face->glyph_locations &&
713 {
715 " Only the `.notdef' glyph has an outline.\n"
716 " "
717 " Resetting scalable flag to FALSE.\n" ));
718
720 }
721 }
722 }
723
724#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
725
726 {
728
729
731 instance_index > 0 )
732 {
733 error = TT_Set_Named_Instance(
face, instance_index );
736
737 tt_apply_mvar(
face );
738 }
739 }
740
741#endif
742
743
745
748
749 Bad_Format:
752 }
#define FT_FACE_FLAG_HINTER
#define FT_HAS_MULTIPLE_MASTERS(face)
#define FT_IS_SCALABLE(face)
#define FT_FACE_FLAG_TRICKY
#define FT_ERROR(varformat)
#define FT_TRACE5(varformat)
#define FT_TRACE2(varformat)
FT_Get_Module_Interface(FT_Library library, const char *mod_name)
#define FT_STREAM_SEEK(position)
GLenum const GLfloat * params
FT_Face_Internal internal
TT_Init_Face_Func init_face
TT_Load_Face_Func load_face
TT_Init_Glyph_Loading(TT_Face face)
static FT_Bool tt_check_trickyness(FT_Face face)
static FT_Bool tt_check_single_notdef(FT_Face ttface)
tt_face_load_prep(TT_Face face, FT_Stream stream)
tt_face_load_cvt(TT_Face face, FT_Stream stream)
tt_face_load_fpgm(TT_Face face, FT_Stream stream)
tt_face_load_hdmx(TT_Face face, FT_Stream stream)
tt_face_load_loca(TT_Face face, FT_Stream stream)