Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

fribidi_remove_bidi_marks(3) [debian man page]

fribidi_remove_bidi_marks(3)					Programmer's Manual				      fribidi_remove_bidi_marks(3)

NAME
fribidi_remove_bidi_marks - remove bidi marks out of an string SYNOPSIS
#include <fribidi.h> FriBidiStrIndex fribidi_remove_bidi_marks ( FriBidiChar *str, const FriBidiStrIndex len, FriBidiStrIndex *positions_to_this, FriBidiStrIndex *position_from_this_list, FriBidiLevel *embedding_levels ); PARAMETERS
FriBidiChar *str Input string to clean. const FriBidiStrIndex len Input string length. FriBidiStrIndex *positions_to_this List mapping positions to the order used in str. FriBidiStrIndex *position_from_this_list List mapping positions from the order used in str. FriBidiLevel *embedding_levels List of embedding levels. DESCRIPTION
This function removes the bidi and boundary-neutral marks out of an string and the accompanying lists. It implements rule X9 of the Uni- code Bidirectional Algorithm available at http://www.unicode.org/reports/tr9/#X9, with the exception that it removes U+200E LEFT-TO-RIGHT MARK and U+200F RIGHT-TO-LEFT MARK too. If any of the input lists are NULL, the list is skipped. If str is the visual string, then positions_to_this is positions_L_to_V and position_from_this_list is positions_V_to_L; if str is the logical string, the other way. Moreover, the position maps should be filled with valid entries. A position map pointing to a removed character is filled with -1. By the way, you should not use embedding_levels if str is visual string. For best results this function should be run on a whole paragraph, not lines; but feel free to do otherwise if you know what you are doing. Deprecated. Use fribidi_remove_special_chars instead. RETURNS
New length of the string, or -1 if an error occured (memory allocation failure most probably). SEE ALSO
fribidi_charset_to_unicode(3), fribidi_unicode_to_charset(3), fribidi_parse_charset(3), fribidi_shape_arabic(3), fribidi_get_par_direc- tion(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_sta- tus(3), fribidi_set_reorder_nsm(3), fribidi_log2vis_get_embedding_levels(3), fribidi_get_type(3), fribidi_get_type_internal(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) GNU FriBidi 0.19.2 30 January 2006 fribidi_remove_bidi_marks(3)

Check Out this Related Man Page

fribidi_shape(3)						Programmer's Manual						  fribidi_shape(3)

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 Ara- bic 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_direc- tion(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_sta- tus(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) GNU FriBidi 0.19.2 30 January 2006 fribidi_shape(3)
Man Page