00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __USHAPE_H__
00018 #define __USHAPE_H__
00019
00020 #include "unicode/utypes.h"
00021
00099 U_STABLE int32_t U_EXPORT2
00100 u_shapeArabic(const UChar *source, int32_t sourceLength,
00101 UChar *dest, int32_t destSize,
00102 uint32_t options,
00103 UErrorCode *pErrorCode);
00104
00109 #define U_SHAPE_LENGTH_GROW_SHRINK 0
00110
00116 #define U_SHAPE_LENGTH_FIXED_SPACES_NEAR 1
00117
00123 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_END 2
00124
00130 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_BEGINNING 3
00131
00133 #define U_SHAPE_LENGTH_MASK 3
00134
00135
00137 #define U_SHAPE_TEXT_DIRECTION_LOGICAL 0
00138
00145 #define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR 4
00146
00148 #define U_SHAPE_TEXT_DIRECTION_MASK 4
00149
00150
00152 #define U_SHAPE_LETTERS_NOOP 0
00153
00155 #define U_SHAPE_LETTERS_SHAPE 8
00156
00158 #define U_SHAPE_LETTERS_UNSHAPE 0x10
00159
00167 #define U_SHAPE_LETTERS_SHAPE_TASHKEEL_ISOLATED 0x18
00168
00170 #define U_SHAPE_LETTERS_MASK 0x18
00171
00172
00174 #define U_SHAPE_DIGITS_NOOP 0
00175
00181 #define U_SHAPE_DIGITS_EN2AN 0x20
00182
00188 #define U_SHAPE_DIGITS_AN2EN 0x40
00189
00201 #define U_SHAPE_DIGITS_ALEN2AN_INIT_LR 0x60
00202
00213 #define U_SHAPE_DIGITS_ALEN2AN_INIT_AL 0x80
00214
00216 #define U_SHAPE_DIGITS_RESERVED 0xa0
00217
00219 #define U_SHAPE_DIGITS_MASK 0xe0
00220
00221
00223 #define U_SHAPE_DIGIT_TYPE_AN 0
00224
00226 #define U_SHAPE_DIGIT_TYPE_AN_EXTENDED 0x100
00227
00229 #define U_SHAPE_DIGIT_TYPE_RESERVED 0x200
00230
00232 #define U_SHAPE_DIGIT_TYPE_MASK 0x3f00
00233
00234 #endif