1
/***************************************************************************/
5
/* Auto-fitter hinting routines for Indic scripts (body). */
7
/* Copyright 2007, 2011 by */
8
/* Rahul Bhalerao <rahul.bhalerao@redhat.com>, <b.rahul.pm@gmail.com>. */
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 */
12
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13
/* this file you indicate that you have read the license and */
14
/* understand and accept it fully. */
16
/***************************************************************************/
23
#ifdef AF_CONFIG_OPTION_INDIC
30
#ifdef AF_CONFIG_OPTION_USE_WARPER
36
af_indic_metrics_init( AF_LatinMetrics metrics,
39
/* use CJK routines */
40
return af_cjk_metrics_init( metrics, face );
45
af_indic_metrics_scale( AF_LatinMetrics metrics,
48
/* use CJK routines */
49
af_cjk_metrics_scale( metrics, scaler );
54
af_indic_hints_init( AF_GlyphHints hints,
55
AF_LatinMetrics metrics )
57
/* use CJK routines */
58
return af_cjk_hints_init( hints, metrics );
63
af_indic_hints_apply( AF_GlyphHints hints,
65
AF_LatinMetrics metrics)
67
/* use CJK routines */
68
return af_cjk_hints_apply( hints, outline, metrics );
72
/*************************************************************************/
73
/*************************************************************************/
75
/***** I N D I C S C R I P T C L A S S *****/
77
/*************************************************************************/
78
/*************************************************************************/
81
static const AF_Script_UniRangeRec af_indic_uniranges[] =
84
AF_UNIRANGE_REC( 0x0100UL, 0xFFFFUL ), /* why this? */
86
AF_UNIRANGE_REC( 0x0900UL, 0x0DFFUL), /* Indic Range */
87
AF_UNIRANGE_REC( 0x0F00UL, 0x0FFFUL), /* Tibetan */
88
AF_UNIRANGE_REC( 0x1900UL, 0x194FUL), /* Limbu */
89
AF_UNIRANGE_REC( 0x1B80UL, 0x1BBFUL), /* Sundanese */
90
AF_UNIRANGE_REC( 0x1C80UL, 0x1CDFUL), /* Meetei Mayak */
91
AF_UNIRANGE_REC( 0xA800UL, 0xA82FUL), /* Syloti Nagri */
92
AF_UNIRANGE_REC( 0x11800UL, 0x118DFUL), /* Sharada */
93
AF_UNIRANGE_REC( 0UL, 0UL)
97
AF_DEFINE_SCRIPT_CLASS(af_indic_script_class,
101
sizeof( AF_LatinMetricsRec ),
103
(AF_Script_InitMetricsFunc) af_indic_metrics_init,
104
(AF_Script_ScaleMetricsFunc)af_indic_metrics_scale,
105
(AF_Script_DoneMetricsFunc) NULL,
107
(AF_Script_InitHintsFunc) af_indic_hints_init,
108
(AF_Script_ApplyHintsFunc) af_indic_hints_apply
111
#else /* !AF_CONFIG_OPTION_INDIC */
113
static const AF_Script_UniRangeRec af_indic_uniranges[] =
119
AF_DEFINE_SCRIPT_CLASS(af_indic_script_class,
123
sizeof( AF_LatinMetricsRec ),
125
(AF_Script_InitMetricsFunc) NULL,
126
(AF_Script_ScaleMetricsFunc)NULL,
127
(AF_Script_DoneMetricsFunc) NULL,
129
(AF_Script_InitHintsFunc) NULL,
130
(AF_Script_ApplyHintsFunc) NULL
133
#endif /* !AF_CONFIG_OPTION_INDIC */