1fribidi_get_par_embedding_levelPsr_oegxr(a3m)mer'fsriMbainduia_lget_par_embedding_levels_ex(3)
2
3
4
6 fribidi_get_par_embedding_levels_ex - get bidi embedding levels of a
7 paragraph
8
10 #include <fribidi.h>
11
12 extern FriBidiLevel fribidi_get_par_embedding_levels_ex
13 (
14 const FriBidiCharType *bidi_types,
15 const FriBidiBracketType *bracket_types,
16 const FriBidiStrIndex len,
17 FriBidiParType *pbase_dir,
18 FriBidiLevel *embedding_levels
19 );
20
22 const FriBidiCharType *bidi_types
23 Input list of bidi types as returned by
24 fribidi_get_bidi_types().
25
26 Since there are 23 possible values for a const FriBidiCharType,
27 they are not all listed here.
28
29 const FriBidiBracketType *bracket_types
30 Input list of bracket types as returned by
31 fribidi_get_bracket_types().
32
33 const FriBidiStrIndex len
34 Input string length of the paragraph.
35
36 FriBidiParType *pbase_dir
37 Requested and resolved paragraph base direction.
38
39 Possible values for a FriBidiParType are as follows:
40 FRIBIDI_PAR_LTR Left-To-Right paragraph.
41 FRIBIDI_PAR_RTL Right-To-Left paragraph.
42 FRIBIDI_PAR_ON DirectiOn-Neutral paragraph.
43 FRIBIDI_PAR_WLTR Weak Left To Right paragraph.
44 FRIBIDI_PAR_WRTL Weak Right To Left paragraph.
45
46 FriBidiLevel *embedding_levels
47 Output list of embedding levels.
48
50 This function finds the bidi embedding levels of a single paragraph, as
51 defined by the Unicode Bidirectional Algorithm available at
52 http://www.unicode.org/reports/tr9/. This function implements rules P2
53 to I1 inclusive, and parts 1 to 3 of L1, except for rule X9 which is
54 implemented in fribidi_remove_bidi_marks(). Part 4 of L1 is imple‐
55 mented in fribidi_reorder_line().
56
57 There are a few macros defined in fribidi-bidi-types.h to work with
58 this embedding levels.
59
61 Maximum level found plus one, or zero if any error occurred (memory
62 allocation failure most probably).
63
65 fribidi_shape_arabic(3), fribidi_get_par_direction(3),
66 fribidi_reorder_line(3), fribidi_get_bidi_type(3),
67 fribidi_get_bidi_types(3), fribidi_get_bidi_type_name(3),
68 fribidi_debug_status(3), fribidi_set_debug(3), fribidi_charset_to_uni‐
69 code(3), fribidi_unicode_to_charset(3), fribidi_parse_charset(3),
70 fribidi_mirroring_status(3), fribidi_set_mirroring(3),
71 fribidi_reorder_nsm_status(3), fribidi_set_reorder_nsm(3),
72 fribidi_log2vis_get_embedding_levels(3), fribidi_get_type(3),
73 fribidi_get_type_internal(3), fribidi_remove_bidi_marks(3),
74 fribidi_log2vis(3), fribidi_get_par_embedding_levels(3),
75 fribidi_join_arabic(3), fribidi_get_joining_type(3), fribidi_get_join‐
76 ing_types(3), fribidi_get_joining_type_name(3), fribidi_get_mir‐
77 ror_char(3), fribidi_shape_mirroring(3), fribidi_get_bracket(3),
78 fribidi_get_bracket_types(3), fribidi_shape(3)
79
80
81
82c2man fribidi-bidi.h 19 Februarfyri2b0i1d8i_get_par_embedding_levels_ex(3)