24#ifdef AF_CONFIG_OPTION_INDIC
31 af_indic_metrics_init( AF_StyleMetrics metrics_,
34 AF_CJKMetrics metrics = (AF_CJKMetrics)metrics_;
38 FT_CharMap oldmap = face->charmap;
41 metrics->units_per_em = face->units_per_EM;
43 if ( FT_Select_Charmap( face, FT_ENCODING_UNICODE ) )
47 af_cjk_metrics_init_widths( metrics, face );
50 af_cjk_metrics_init_blues( metrics, face, af_cjk_blue_chars );
52 af_cjk_metrics_check_digits( metrics, face );
55 face->charmap = oldmap;
61 af_indic_metrics_scale( AF_StyleMetrics metrics,
65 af_cjk_metrics_scale( metrics, scaler );
70 af_indic_hints_init( AF_GlyphHints hints,
71 AF_StyleMetrics metrics )
74 return af_cjk_hints_init( hints, metrics );
79 af_indic_hints_apply( FT_UInt glyph_index,
82 AF_StyleMetrics metrics )
85 return af_cjk_hints_apply( glyph_index, hints, outline, metrics );
93 af_indic_get_standard_widths( AF_StyleMetrics metrics_,
97 AF_CJKMetrics metrics = (AF_CJKMetrics)metrics_;
101 *stdHW = metrics->axis[AF_DIMENSION_VERT].standard_width;
104 *stdVW = metrics->axis[AF_DIMENSION_HORZ].standard_width;
117 AF_DEFINE_WRITING_SYSTEM_CLASS(
118 af_indic_writing_system_class,
120 AF_WRITING_SYSTEM_INDIC,
122 sizeof ( AF_CJKMetricsRec ),
124 (AF_WritingSystem_InitMetricsFunc) af_indic_metrics_init,
125 (AF_WritingSystem_ScaleMetricsFunc)af_indic_metrics_scale,
126 (AF_WritingSystem_DoneMetricsFunc) NULL,
127 (AF_WritingSystem_GetStdWidthsFunc)af_indic_get_standard_widths,
129 (AF_WritingSystem_InitHintsFunc) af_indic_hints_init,
130 (AF_WritingSystem_ApplyHintsFunc) af_indic_hints_apply
137 AF_DEFINE_WRITING_SYSTEM_CLASS(
138 af_indic_writing_system_class,
140 AF_WRITING_SYSTEM_INDIC,
142 sizeof ( AF_CJKMetricsRec ),
144 (AF_WritingSystem_InitMetricsFunc) NULL,
145 (AF_WritingSystem_ScaleMetricsFunc)NULL,
146 (AF_WritingSystem_DoneMetricsFunc) NULL,
147 (AF_WritingSystem_GetStdWidthsFunc)NULL,
149 (AF_WritingSystem_InitHintsFunc) NULL,
150 (AF_WritingSystem_ApplyHintsFunc) NULL