Man Linux: Main Page and Category List

NAME

       fribidi_shape - do bidi-aware shaping

SYNOPSIS

       #include <fribidi.h>

       void fribidi_shape
       (
            FriBidiFlags flags,
            const FriBidiLevel *embedding_levels,
            const FriBidiStrIndex len,
            FriBidiArabicProp *ar_props,
            FriBidiChar *str
       );

PARAMETERS

       FriBidiFlags flags
              Shaping flags.

       const FriBidiLevel *embedding_levels
              Input    list    of    embedding    levels,   as   returned   by
              fribidi_get_par_embedding_levels.

       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

       This  function  does  all  shaping  work  that  depends on the resolved
       embedding levels of the characters.  Currently it  does  mirroring  and
       Arabic  shaping, but the list may grow in the future.  This function is
       a wrapper around fribidi_shape_mirroring and fribidi_shape_arabic.

       The flags parameter specifies which shapings  are  applied.   The  only
       flags  affecting the functionality of this function are those beginning
       with FRIBIDI_FLAG_SHAPE_.  Of these, only  FRIBIDI_FLAG_SHAPE_MIRRORING
       is  on  in  FRIBIDI_FLAGS_DEFAULT.   For details of the Arabic-specific
       flags see fribidi_shape_arabic.  If ar_props is NULL, no Arabic shaping
       is performed.

       Feel free to do your own shaping before or after calling this function,
       but you should take care of embedding levels yourself then.

SEE ALSO

       fribidi_charset_to_unicode(3),           fribidi_unicode_to_charset(3),
       fribidi_parse_charset(3),                      fribidi_shape_arabic(3),
       fribidi_get_par_direction(3),      fribidi_get_par_embedding_levels(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_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_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)