fribidi_log2vis
Section: Programmer's Manual (3)
Updated: 19 February 2018
Page Index
NAME
fribidi_log2vis - get visual string
SYNOPSIS
#include <fribidi.h>
extern FriBidiLevel fribidi_log2vis
(
const FriBidiChar *str,
const FriBidiStrIndex len,
FriBidiParType *pbase_dir,
FriBidiChar *visual_str,
FriBidiStrIndex *positions_L_to_V,
FriBidiStrIndex *positions_V_to_L,
FriBidiLevel *embedding_levels
);
PARAMETERS
- const FriBidiChar *str
-
Input logical string.
- const FriBidiStrIndex len
-
Input string length.
- FriBidiParType *pbase_dir
-
Requested and resolved paragraph
base direction.
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.
- FriBidiChar *visual_str
-
Output visual string.
- FriBidiStrIndex *positions_L_to_V
-
Output mapping from logical to
visual string positions.
- FriBidiStrIndex *positions_V_to_L
-
Output mapping from visual string
back to the logical string
positions.
- FriBidiLevel *embedding_levels
-
Output list of embedding levels.
DESCRIPTION
This function converts the logical input string to the visual output
strings as specified by the Unicode Bidirectional Algorithm. As a side
effect it also generates mapping lists between the two strings, and the
list of embedding levels as defined by the algorithm.
If NULL is passed as any of the the lists, the list is ignored and not
filled.
This function is obsolete because it only handles one-line paragraphs.
Please consider using other functions instead. Deprecated.
RETURNS
Maximum level found plus one, or zero if any error occurred
(memory allocation failure most probably).
SEE ALSO
fribidi_shape_arabic(3),
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_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)