xref: /aosp_15_r20/external/harfbuzz_ng/src/hb-ot-deprecated.h (revision 2d1272b857b1f7575e6e246373e1cb218663db8a)
1*2d1272b8SAndroid Build Coastguard Worker /*
2*2d1272b8SAndroid Build Coastguard Worker  * Copyright © 2018  Google, Inc.
3*2d1272b8SAndroid Build Coastguard Worker  *
4*2d1272b8SAndroid Build Coastguard Worker  *  This is part of HarfBuzz, a text shaping library.
5*2d1272b8SAndroid Build Coastguard Worker  *
6*2d1272b8SAndroid Build Coastguard Worker  * Permission is hereby granted, without written agreement and without
7*2d1272b8SAndroid Build Coastguard Worker  * license or royalty fees, to use, copy, modify, and distribute this
8*2d1272b8SAndroid Build Coastguard Worker  * software and its documentation for any purpose, provided that the
9*2d1272b8SAndroid Build Coastguard Worker  * above copyright notice and the following two paragraphs appear in
10*2d1272b8SAndroid Build Coastguard Worker  * all copies of this software.
11*2d1272b8SAndroid Build Coastguard Worker  *
12*2d1272b8SAndroid Build Coastguard Worker  * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13*2d1272b8SAndroid Build Coastguard Worker  * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14*2d1272b8SAndroid Build Coastguard Worker  * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15*2d1272b8SAndroid Build Coastguard Worker  * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16*2d1272b8SAndroid Build Coastguard Worker  * DAMAGE.
17*2d1272b8SAndroid Build Coastguard Worker  *
18*2d1272b8SAndroid Build Coastguard Worker  * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19*2d1272b8SAndroid Build Coastguard Worker  * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20*2d1272b8SAndroid Build Coastguard Worker  * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
21*2d1272b8SAndroid Build Coastguard Worker  * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22*2d1272b8SAndroid Build Coastguard Worker  * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23*2d1272b8SAndroid Build Coastguard Worker  *
24*2d1272b8SAndroid Build Coastguard Worker  * Google Author(s): Behdad Esfahbod
25*2d1272b8SAndroid Build Coastguard Worker  */
26*2d1272b8SAndroid Build Coastguard Worker 
27*2d1272b8SAndroid Build Coastguard Worker #if !defined(HB_OT_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
28*2d1272b8SAndroid Build Coastguard Worker #error "Include <hb-ot.h> instead."
29*2d1272b8SAndroid Build Coastguard Worker #endif
30*2d1272b8SAndroid Build Coastguard Worker 
31*2d1272b8SAndroid Build Coastguard Worker #ifndef HB_OT_DEPRECATED_H
32*2d1272b8SAndroid Build Coastguard Worker #define HB_OT_DEPRECATED_H
33*2d1272b8SAndroid Build Coastguard Worker 
34*2d1272b8SAndroid Build Coastguard Worker #include "hb.h"
35*2d1272b8SAndroid Build Coastguard Worker #include "hb-ot-name.h"
36*2d1272b8SAndroid Build Coastguard Worker 
37*2d1272b8SAndroid Build Coastguard Worker 
38*2d1272b8SAndroid Build Coastguard Worker HB_BEGIN_DECLS
39*2d1272b8SAndroid Build Coastguard Worker 
40*2d1272b8SAndroid Build Coastguard Worker #ifndef HB_DISABLE_DEPRECATED
41*2d1272b8SAndroid Build Coastguard Worker 
42*2d1272b8SAndroid Build Coastguard Worker 
43*2d1272b8SAndroid Build Coastguard Worker /* https://github.com/harfbuzz/harfbuzz/issues/1734 */
44*2d1272b8SAndroid Build Coastguard Worker /**
45*2d1272b8SAndroid Build Coastguard Worker  * HB_MATH_GLYPH_PART_FLAG_EXTENDER:
46*2d1272b8SAndroid Build Coastguard Worker  *
47*2d1272b8SAndroid Build Coastguard Worker  * Use #HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER instead.
48*2d1272b8SAndroid Build Coastguard Worker  *
49*2d1272b8SAndroid Build Coastguard Worker  * Deprecated: 2.5.1
50*2d1272b8SAndroid Build Coastguard Worker  */
51*2d1272b8SAndroid Build Coastguard Worker #define HB_MATH_GLYPH_PART_FLAG_EXTENDER HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER
52*2d1272b8SAndroid Build Coastguard Worker 
53*2d1272b8SAndroid Build Coastguard Worker /* https://github.com/harfbuzz/harfbuzz/pull/3417 */
54*2d1272b8SAndroid Build Coastguard Worker /**
55*2d1272b8SAndroid Build Coastguard Worker  * HB_OT_MATH_SCRIPT:
56*2d1272b8SAndroid Build Coastguard Worker  *
57*2d1272b8SAndroid Build Coastguard Worker  * Use #HB_SCRIPT_MATH or #HB_OT_TAG_MATH_SCRIPT instead.
58*2d1272b8SAndroid Build Coastguard Worker  *
59*2d1272b8SAndroid Build Coastguard Worker  * <note>Previous versions of this documentation recommended passing
60*2d1272b8SAndroid Build Coastguard Worker  * #HB_OT_MATH_SCRIPT to hb_buffer_set_script() to enable math shaping, but this
61*2d1272b8SAndroid Build Coastguard Worker  * usage is no longer supported. Use #HB_SCRIPT_MATH instead.</note>
62*2d1272b8SAndroid Build Coastguard Worker  *
63*2d1272b8SAndroid Build Coastguard Worker  * Since: 1.3.3
64*2d1272b8SAndroid Build Coastguard Worker  * Deprecated: 3.4.0
65*2d1272b8SAndroid Build Coastguard Worker  */
66*2d1272b8SAndroid Build Coastguard Worker #define HB_OT_MATH_SCRIPT HB_OT_TAG_MATH_SCRIPT
67*2d1272b8SAndroid Build Coastguard Worker 
68*2d1272b8SAndroid Build Coastguard Worker 
69*2d1272b8SAndroid Build Coastguard Worker /* Like hb_ot_layout_table_find_script, but takes zero-terminated array of scripts to test */
70*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_layout_table_select_script)
71*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN hb_bool_t
72*2d1272b8SAndroid Build Coastguard Worker hb_ot_layout_table_choose_script (hb_face_t      *face,
73*2d1272b8SAndroid Build Coastguard Worker 				  hb_tag_t        table_tag,
74*2d1272b8SAndroid Build Coastguard Worker 				  const hb_tag_t *script_tags,
75*2d1272b8SAndroid Build Coastguard Worker 				  unsigned int   *script_index,
76*2d1272b8SAndroid Build Coastguard Worker 				  hb_tag_t       *chosen_script);
77*2d1272b8SAndroid Build Coastguard Worker 
78*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_layout_script_select_language)
79*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN hb_bool_t
80*2d1272b8SAndroid Build Coastguard Worker hb_ot_layout_script_find_language (hb_face_t    *face,
81*2d1272b8SAndroid Build Coastguard Worker 				   hb_tag_t      table_tag,
82*2d1272b8SAndroid Build Coastguard Worker 				   unsigned int  script_index,
83*2d1272b8SAndroid Build Coastguard Worker 				   hb_tag_t      language_tag,
84*2d1272b8SAndroid Build Coastguard Worker 				   unsigned int *language_index);
85*2d1272b8SAndroid Build Coastguard Worker 
86*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_tags_from_script_and_language)
87*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN void
88*2d1272b8SAndroid Build Coastguard Worker hb_ot_tags_from_script (hb_script_t  script,
89*2d1272b8SAndroid Build Coastguard Worker 			hb_tag_t    *script_tag_1,
90*2d1272b8SAndroid Build Coastguard Worker 			hb_tag_t    *script_tag_2);
91*2d1272b8SAndroid Build Coastguard Worker 
92*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_tags_from_script_and_language)
93*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN hb_tag_t
94*2d1272b8SAndroid Build Coastguard Worker hb_ot_tag_from_language (hb_language_t language);
95*2d1272b8SAndroid Build Coastguard Worker 
96*2d1272b8SAndroid Build Coastguard Worker 
97*2d1272b8SAndroid Build Coastguard Worker /**
98*2d1272b8SAndroid Build Coastguard Worker  * HB_OT_VAR_NO_AXIS_INDEX:
99*2d1272b8SAndroid Build Coastguard Worker  *
100*2d1272b8SAndroid Build Coastguard Worker  * Do not use.
101*2d1272b8SAndroid Build Coastguard Worker  *
102*2d1272b8SAndroid Build Coastguard Worker  * Since: 1.4.2
103*2d1272b8SAndroid Build Coastguard Worker  * Deprecated: 2.2.0
104*2d1272b8SAndroid Build Coastguard Worker  */
105*2d1272b8SAndroid Build Coastguard Worker #define HB_OT_VAR_NO_AXIS_INDEX		0xFFFFFFFFu
106*2d1272b8SAndroid Build Coastguard Worker 
107*2d1272b8SAndroid Build Coastguard Worker /**
108*2d1272b8SAndroid Build Coastguard Worker  * hb_ot_var_axis_t:
109*2d1272b8SAndroid Build Coastguard Worker  * @tag: axis tag
110*2d1272b8SAndroid Build Coastguard Worker  * @name_id: axis name identifier
111*2d1272b8SAndroid Build Coastguard Worker  * @min_value: minimum value of the axis
112*2d1272b8SAndroid Build Coastguard Worker  * @default_value: default value of the axis
113*2d1272b8SAndroid Build Coastguard Worker  * @max_value: maximum value of the axis
114*2d1272b8SAndroid Build Coastguard Worker  *
115*2d1272b8SAndroid Build Coastguard Worker  * Use #hb_ot_var_axis_info_t instead.
116*2d1272b8SAndroid Build Coastguard Worker  *
117*2d1272b8SAndroid Build Coastguard Worker  * Since: 1.4.2
118*2d1272b8SAndroid Build Coastguard Worker  * Deprecated: 2.2.0
119*2d1272b8SAndroid Build Coastguard Worker  */
120*2d1272b8SAndroid Build Coastguard Worker typedef struct hb_ot_var_axis_t {
121*2d1272b8SAndroid Build Coastguard Worker   hb_tag_t tag;
122*2d1272b8SAndroid Build Coastguard Worker   hb_ot_name_id_t name_id;
123*2d1272b8SAndroid Build Coastguard Worker   float min_value;
124*2d1272b8SAndroid Build Coastguard Worker   float default_value;
125*2d1272b8SAndroid Build Coastguard Worker   float max_value;
126*2d1272b8SAndroid Build Coastguard Worker } hb_ot_var_axis_t;
127*2d1272b8SAndroid Build Coastguard Worker 
128*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_var_get_axis_infos)
129*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN unsigned int
130*2d1272b8SAndroid Build Coastguard Worker hb_ot_var_get_axes (hb_face_t        *face,
131*2d1272b8SAndroid Build Coastguard Worker 		    unsigned int      start_offset,
132*2d1272b8SAndroid Build Coastguard Worker 		    unsigned int     *axes_count /* IN/OUT */,
133*2d1272b8SAndroid Build Coastguard Worker 		    hb_ot_var_axis_t *axes_array /* OUT */);
134*2d1272b8SAndroid Build Coastguard Worker 
135*2d1272b8SAndroid Build Coastguard Worker HB_DEPRECATED_FOR (hb_ot_var_find_axis_info)
136*2d1272b8SAndroid Build Coastguard Worker HB_EXTERN hb_bool_t
137*2d1272b8SAndroid Build Coastguard Worker hb_ot_var_find_axis (hb_face_t        *face,
138*2d1272b8SAndroid Build Coastguard Worker 		     hb_tag_t          axis_tag,
139*2d1272b8SAndroid Build Coastguard Worker 		     unsigned int     *axis_index,
140*2d1272b8SAndroid Build Coastguard Worker 		     hb_ot_var_axis_t *axis_info);
141*2d1272b8SAndroid Build Coastguard Worker 
142*2d1272b8SAndroid Build Coastguard Worker 
143*2d1272b8SAndroid Build Coastguard Worker #endif
144*2d1272b8SAndroid Build Coastguard Worker 
145*2d1272b8SAndroid Build Coastguard Worker HB_END_DECLS
146*2d1272b8SAndroid Build Coastguard Worker 
147*2d1272b8SAndroid Build Coastguard Worker #endif /* HB_OT_DEPRECATED_H */
148