fribidi_shape_arabic - do Arabic shaping
Contents
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.
Name
fribidi_shape_arabic - do Arabic shaping
Parameters
FriBidiFlagsflags
Shaping flags.
constFriBidiLevel*embedding_levels
Not Documented.
constFriBidiStrIndexlen
Input string length.
FriBidiArabicProp*ar_props
Input/output Arabic properties as computed by fribidi_join_arabic.
FriBidiChar*str
String to shape.
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_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),
fribidi_remove_bidi_marks(3), fribidi_log2vis(3)
c2man fribidi-arabic.h 25 September 2024 fribidi_shape_arabic(3)
Synopsis
#include<fribidi.h>voidfribidi_shape_arabic(FriBidiFlagsflags,constFriBidiLevel*embedding_levels,constFriBidiStrIndexlen,FriBidiArabicProp*ar_props,FriBidiChar*str);
