Man Linux: Main Page and Category List

NAME

       fribidi_get_par_direction - get base paragraph direction

SYNOPSIS

       #include <fribidi.h>

       FriBidiParType fribidi_get_par_direction
       (
            const FriBidiCharType *bidi_types,
            const FriBidiStrIndex len
       );

PARAMETERS

       const FriBidiCharType *bidi_types
              Input     list     of     bidi     types    as    returned    by
              fribidi_get_bidi_types().

              Possible values for a const FriBidiCharType are as follows:
               FRIBIDI_TYPE_LTR  Left-To-Right letter.
               FRIBIDI_TYPE_RTL  Right-To-Left letter.
               FRIBIDI_TYPE_AL   Arabic Letter.
               FRIBIDI_TYPE_EN   European Numeral.
               FRIBIDI_TYPE_AN   Arabic Numeral.
               FRIBIDI_TYPE_ES   European number Separator.
               FRIBIDI_TYPE_ET   European number Terminator.
               FRIBIDI_TYPE_CS   Common Separator.
               FRIBIDI_TYPE_NSM  Non Spacing Mark.
               FRIBIDI_TYPE_BN   Boundary Neutral.
               FRIBIDI_TYPE_BS   Block Separator.
               FRIBIDI_TYPE_SS   Segment Separator.
               FRIBIDI_TYPE_WS   WhiteSpace.
               FRIBIDI_TYPE_ON   Other Neutral.
               FRIBIDI_TYPE_LRE  Left-to-Right Embedding.
               FRIBIDI_TYPE_RLE  Right-to-Left Embedding.
               FRIBIDI_TYPE_LRO  Left-to-Right Override.
               FRIBIDI_TYPE_RLO  Right-to-Left Override.
               FRIBIDI_TYPE_PDF  Pop Directional Flag.

       const FriBidiStrIndex len
              Input string length.

DESCRIPTION

       This function finds the  base  direction  of  a  single  paragraph,  as
       defined  by rule P2 of the Unicode Bidirectional Algorithm available at
       http://www.unicode.org/reports/tr9/#P2.

       You     typically     do     not     need     this     function      as
       fribidi_get_par_embedding_levels()  knows how to compute base direction
       itself, but you  may  need  this  to  implement  a  more  sophisticated
       paragraph  direction  handling.   Note  that  you  can pass more than a
       paragraph to this function and the direction of the  first  non-neutral
       paragraph  is returned, which is a very good heuristic to set direction
       of the neutral paragraphs at the beginning of text.  For other  neutral
       paragraphs, you better use the direction of the previous paragraph.

RETURNS

       Base pargraph direction.  No weak paragraph direction is returned, only
       LTR, RTL, or ON.

       Possible values for a FriBidiParType are as follows:
               FRIBIDI_PAR_LTR   Left-To-Right paragraph.
               FRIBIDI_PAR_RTL   Right-To-Left paragraph.
               FRIBIDI_PAR_ON    DirectiOn-Neutral paragraph.
               FRIBIDI_PAR_WLTR  Weak Left To Right paragraph.
               FRIBIDI_PAR_WRTL  Weak Right To Left paragraph.

SEE ALSO

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