583 {
588
589
591
593
596 {
597 FT_ERROR((
"tt_face_init: cannot access `sfnt' module\n" ));
600 }
601
602
605
606
609
610
612
615
616
617
618
619 if (
face->format_tag != 0x00010000L &&
620 face->format_tag != 0x00020000L &&
624 {
626 goto Bad_Format;
627 }
628
629#ifdef TT_USE_BYTECODE_INTERPRETER
631#endif
632
633
634 if ( face_index < 0 )
636
637
641
644
648
650 {
651#ifdef FT_CONFIG_OPTION_INCREMENTAL
652 if ( !ttface->
internal->incremental_interface )
653#endif
654 {
656
657
658
663 }
664
665
669
673
677
678
679#ifdef FT_CONFIG_OPTION_INCREMENTAL
680 if ( !ttface->
internal->incremental_interface )
681#endif
682 {
684 face->glyph_locations &&
686 {
688 " Only the `.notdef' glyph has an outline.\n"
689 " "
690 " Resetting scalable flag to FALSE.\n" ));
691
693 }
694 }
695 }
696
697#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
698
699 {
701
702
704 instance_index > 0 )
705 {
706 error = TT_Set_Named_Instance(
face, instance_index );
709
710 tt_apply_mvar(
face );
711 }
712 }
713
714#endif
715
716
718
721
722 Bad_Format:
725 }
#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)