mirror of
https://github.com/php/php-src.git
synced 2024-11-30 05:13:56 +08:00
54 lines
1.7 KiB
Plaintext
54 lines
1.7 KiB
Plaintext
Purpose
|
|
=======
|
|
|
|
This extension is basically a wrapper for the FriBidi implementation
|
|
of the Unicode Bidi algorithm. The need for such an algorithm rises
|
|
from the bidirectional language usage done by applications.
|
|
Arabic/Hebrew embedded within English is such a case.
|
|
|
|
Usage
|
|
=====
|
|
|
|
The only function used is fribidi_log2vis (logical to visual).
|
|
Input: 1) The Logical string.
|
|
2) Base direction of application - 'L' or 'R'.
|
|
3) The char code being used, which can be one of the following
|
|
constants:
|
|
a) FRIBIDI_CHARSET_UTF8
|
|
b) FRIBIDI_CHARSET_8859_6
|
|
c) FRIBIDI_CHARSET_8859_8
|
|
d) FRIBIDI_CHARSET_CP1255
|
|
e) FRIBIDI_CHARSET_CP1256
|
|
f) FRIBIDI_CHARSET_ISIRI_3342
|
|
|
|
Note: Currently, FriBidi supports the above Character Codes alone.
|
|
|
|
Output: A Visual string.
|
|
|
|
|
|
Compiling
|
|
===========
|
|
1) Static - ./configure --with-fribidi=base-directory-of-FriBidi-installation-path
|
|
(defaults to /usr/local).
|
|
|
|
2) dl - same, just add shared, to get .... --with-fribidi=shared,base....
|
|
|
|
Prerequisites
|
|
=============
|
|
1) FriBidi version 0.9.0 or later must be installed. Latest version can be obtained thru
|
|
http://fribidi.sourceforge.net/
|
|
|
|
2) glib header files: glib.h and glibconfig.h.
|
|
|
|
Note
|
|
=====
|
|
|
|
The function fribidi_log2vis computes three more arrays which are currently not passed back as output.
|
|
These arrays are:
|
|
1) mapping from the logical to the visual sting.
|
|
2) mapping from the visual to the logical string.
|
|
3) embedding level of characters as figured out by the FriBidi algorithm.
|
|
|
|
The extension needs further implementation to support this.
|
|
p.s. - If you don't understand this, you probably don't need it.
|