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

FreeBSD Manual Pages

  
 
  

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

NAME
     fribidi_join_arabic - do Arabic joining

SYNOPSIS
     #include <fribidi.h>

     void fribidi_join_arabic
     (
	  const FriBidiCharType *bidi_types,
	  const FriBidiStrIndex len,
	  const FriBidiLevel *embedding_levels,
	  FriBidiArabicProp *ar_props
     );

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

	    Since there are 23 possible values for a const FriBidiCharType, they
	    are not all listed here.

     const FriBidiStrIndex len
	    Input string length.

     const FriBidiLevel *embedding_levels
	    Input  list  of embedding levels, as returned by fribidi_get_par_em-
	    bedding_levels.

     FriBidiArabicProp *ar_props
	    Arabic properties to analyze, initialized by joining types,  as  re-
	    turned by fribidi_get_joining_types.

DESCRIPTION
     This function does the Arabic joining algorithm.  Means, given Arabic join-
     ing  types  of  the characters in ar_props (don't worry, FriBidiJoiningType
     can be casted to FriBidiArabicProp automagically), this  function	modifies
     this  properties to grasp the effect of neighboring characters.  You proba-
     bly need this information later to do Arabic shaping.

     This function implements rules R1 to R7 inclusive (all rules) of the Arabic
     Cursive  Joining  algorithm  of  the  Unicode  standard  as  available   at
     http://www.unicode.org/versions/Unicode4.0.0/ch08.pdf#G7462.   It	also in-
     teracts correctly with the bidirection algorithm as defined in Section
     3.5  Shaping  of  the  Unicode   Bidirectional   Algorithm   available   at
     http://www.unicode.org/reports/tr9/#Shaping.

     There  are a few macros defined in fribidi-joining-types.h for querying the
     Arabic properties computed by this function.

SEE ALSO
     fribidi_shape_arabic(3), fribidi_get_par_direction(3),  fribidi_get_par_em-
     bedding_levels_ex(3),   fribidi_reorder_line(3),  fribidi_get_bidi_type(3),
     fribidi_get_bidi_types(3),    fribidi_get_bidi_type_name(3),    fribidi_de-
     bug_status(3),	fribidi_set_debug(3),	  fribidi_charset_to_unicode(3),
     fribidi_unicode_to_charset(3),  fribidi_parse_charset(3),	 fribidi_mirror-
     ing_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_get_par_embed-
     ding_levels(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),	     fribidi_re-
     move_bidi_marks(3), fribidi_log2vis(3)

c2man fribidi-joining.h 	25 September 2024	  fribidi_join_arabic(3)

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

home | help