FreeBSD manual
download PDF document: fribidi_shape_arabic.3.pdf
fribidi_shape_arabic(3) Programmer's Manual fribidi_shape_arabic(3)
NAME
fribidi_shape_arabic - do Arabic shaping
SYNOPSIS
#include <fribidi.h>
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_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 20 July 2018 fribidi_shape_arabic(3)