fribidi_shape_arabic
Section: Programmer's Manual (3)
Updated: 19 February 2018
Page Index
NAME
fribidi_shape_arabic - do Arabic shaping
SYNOPSIS
#include <fribidi.h>
extern void fribidi_shape_arabic
(
FriBidiFlags flags,
const FriBidiLevel *embedding_levels,
const FriBidiStrIndex len,
FriBidiArabicProp *ar_props,
FriBidiChar *str
);
PARAMETERS
- FriBidiFlags flags
-
Shaping flags.
- const FriBidiLevel *embedding_levels
-
Not Documented.
- const FriBidiStrIndex len
-
Input string length.
- FriBidiArabicProp *ar_props
-
Input/output Arabic properties as
computed by fribidi_join_arabic.
- FriBidiChar *str
-
String to shape.
DESCRIPTION
The actual shaping that is done depends on the flags set. Only flags
starting with FRIBIDI_FLAG_SHAPE_ARAB_ affect this function.
Currently these are:
* FRIBIDI_FLAG_SHAPE_MIRRORING: Do mirroring.
* FRIBIDI_FLAG_SHAPE_ARAB_PRES: Shape Arabic characters to their
presentation form glyphs.
* FRIBIDI_FLAG_SHAPE_ARAB_LIGA: Form mandatory Arabic ligatures.
* FRIBIDI_FLAG_SHAPE_ARAB_CONSOLE: Perform additional Arabic shaping
suitable for text rendered on
grid terminals with no mark
rendering capabilities.
Of the above, FRIBIDI_FLAG_SHAPE_ARAB_CONSOLE is only used in special
cases, but the rest are recommended in any environment that doesn't have
other means for doing Arabic shaping. The set of extra flags that enable
this level of Arabic support has a shortcut named FRIBIDI_FLAGS_ARABIC.
SEE ALSO
fribidi_get_par_direction(3),
fribidi_get_par_embedding_levels_ex(3),
fribidi_reorder_line(3),
fribidi_get_bidi_type(3),
fribidi_get_bidi_types(3),
fribidi_get_bidi_type_name(3),
fribidi_debug_status(3),
fribidi_set_debug(3),
fribidi_charset_to_unicode(3),
fribidi_unicode_to_charset(3),
fribidi_parse_charset(3),
fribidi_mirroring_status(3),
fribidi_set_mirroring(3),
fribidi_reorder_nsm_status(3),
fribidi_set_reorder_nsm(3),
fribidi_log2vis_get_embedding_levels(3),
fribidi_get_type(3),
fribidi_get_type_internal(3),
fribidi_remove_bidi_marks(3),
fribidi_log2vis(3),
fribidi_get_par_embedding_levels(3),
fribidi_join_arabic(3),
fribidi_get_joining_type(3),
fribidi_get_joining_types(3),
fribidi_get_joining_type_name(3),
fribidi_get_mirror_char(3),
fribidi_shape_mirroring(3),
fribidi_get_bracket(3),
fribidi_get_bracket_types(3),
fribidi_shape(3)