Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
fribidi_log2vis(3)	      Programmer's Manual	    fribidi_log2vis(3)

NAME
       fribidi_log2vis - get visual string

SYNOPSIS
       #include	<fribidi.h>

       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 po-
	      sitions.

       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.

       Note  that  this	function handles one-line paragraphs. For multi- para-
       graph texts it is necessary to first split the text into	separate para-
       graphs and then carry over the resolved pbase_dir  between  the	subse-
       quent invocations.

RETURNS
       Maximum level found plus	one, or	zero if	any error occurred (memory al-
       location	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_de-
       bug(3),	fribidi_charset_to_unicode(3),	fribidi_unicode_to_charset(3),
       fribidi_parse_charset(3), fribidi_mirroring_status(3), fribidi_set_mir-
       roring(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_get_par_embedding_levels(3),
       fribidi_join_arabic(3), fribidi_get_joining_type(3),  fribidi_get_join-
       ing_types(3),	 fribidi_get_joining_type_name(3),    fribidi_get_mir-
       ror_char(3),    fribidi_shape_mirroring(3),     fribidi_get_bracket(3),
       fribidi_get_bracket_types(3),	   fribidi_shape(3),	   fribidi_re-
       move_bidi_marks(3)

c2man fribidi.h		       25 September 2024	    fribidi_log2vis(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=fribidi_log2vis&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help