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
00022
00023
00103 U_CAPI int32_t U_EXPORT2
00104 u_shapeArabic(const UChar *source, int32_t sourceLength,
00105 UChar *dest, int32_t destSize,
00106 uint32_t options,
00107 UErrorCode *pErrorCode);
00108
00112 #define U_SHAPE_LENGTH_GROW_SHRINK 0
00113
00118 #define U_SHAPE_LENGTH_FIXED_SPACES_NEAR 1
00119
00124 #define U_SHAPE_LENGTH_FIXED_SPACES_AT_END 2
00125
00127 #define U_SHAPE_LENGTH_RESERVED 3
00128
00130 #define U_SHAPE_LENGTH_MASK 3
00131
00132
00134 #define U_SHAPE_TEXT_DIRECTION_LOGICAL 0
00135
00140 #define U_SHAPE_TEXT_DIRECTION_VISUAL_LTR 4
00141
00143 #define U_SHAPE_TEXT_DIRECTION_MASK 4
00144
00145
00147 #define U_SHAPE_LETTERS_NOOP 0
00148
00150 #define U_SHAPE_LETTERS_SHAPE 8
00151
00153 #define U_SHAPE_LETTERS_UNSHAPE 0x10
00154
00156 #define U_SHAPE_LETTERS_RESERVED 0x18
00157
00159 #define U_SHAPE_LETTERS_MASK 0x18
00160
00161
00163 #define U_SHAPE_DIGITS_NOOP 0
00164
00169 #define U_SHAPE_DIGITS_EN2AN 0x20
00170
00175 #define U_SHAPE_DIGITS_AN2EN 0x40
00176
00187 #define U_SHAPE_DIGITS_ALEN2AN_INIT_LR 0x60
00188
00198 #define U_SHAPE_DIGITS_ALEN2AN_INIT_AL 0x80
00199
00201 #define U_SHAPE_DIGITS_RESERVED 0xa0
00202
00204 #define U_SHAPE_DIGITS_MASK 0xe0
00205
00206
00208 #define U_SHAPE_DIGIT_TYPE_AN 0
00209
00211 #define U_SHAPE_DIGIT_TYPE_AN_EXTENDED 0x100
00212
00214 #define U_SHAPE_DIGIT_TYPE_RESERVED 0x200
00215
00217 #define U_SHAPE_DIGIT_TYPE_MASK 0x3f00
00218
00219 #endif