Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.ibm.bidiTools.bdlayout
Class ArabicOption

    java.lang.Object
      com.ibm.bidiTools.bdlayout.ArabicOption

    public class ArabicOption

extends java.lang.Object

This class represents ArabicOption objects and provides initial values for each shaping option.

Arabic text has some special characters that can be converted to different formats, which are characterized by four Arabic options, these options are stored in four Arabic objects. These four options constitute an ArabicOptionSet.

An ArabicOptionSet object contains a value for each of the four Arabic objects which represent the Arabic options. The four options are:

- Lam-Alef handling (Near, At Begin, At End or Auto)
- Seen handling (Near or Auto)
- Yeh Hamza handling (Near or Auto)
- Tashkeel handling (Keep, Customized At Begin, Customized At End, or Auto)

The Arabic options values are pre-defined in this class. Each one represents one possible value of one Arabic option.

For more information on Arabic Shaping options, see: Bidirectional support in IBM SDK: A user guide

Multi-threading considerations: There are no multi-threading concerns for this class because it only defines static final instances.

Field Summary
`static ArabicOption` | `LAMALEF_ATBEGIN` Value identifying At Begin.
`static ArabicOption` | `LAMALEF_ATEND` Value identifying At End.
`static ArabicOption` | `LAMALEF_AUTO` Value identifying Auto.
`static ArabicOption` | `LAMALEF_NEAR` Value identifying Near.
`static ArabicOption` | `LAMALEF_RESIZE_BUFFER` Value identifying Resize buffer.
`static ArabicOption` | `SEEN_ATBEGIN` Deprecated. this option is deprecated use SEEN_NEAR option
`static ArabicOption` | `SEEN_AUTO` Deprecated. this option is deprecated use SEEN_NEAR option
`static ArabicOption` | `SEEN_NEAR` Value identifying Near.
`static ArabicOption` | `TASHKEEL_AUTO` Value identifying Auto.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_ATBEGIN` Value identifying Customized At Begin.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_ATEND` Value identifying Customized At End.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_Near` Value identifying Customized Near.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_RESIZE_BUFFER` Value identifying Customized Resize_Buffer.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_WITHWIDTH` Value identifying Customized With Width.
`static ArabicOption` | `TASHKEEL_CUSTOMIZED_WITHZEROWIDTH` Value identifying Customized With Zero Width.
`static ArabicOption` | `TASHKEEL_KEEP` Value identifying Keep Tashkeel.
`static ArabicOption` | `YEHHAMZA_AUTO` Deprecated. this option is deprecated use YEHHAMZA_TWO_CELL_NEAR
`static ArabicOption` | `YEHHAMZA_TWO_CELL_ATEND` Deprecated. this option is deprecated use YEHHAMZA_TWO_CELL_NEAR
`static ArabicOption` | `YEHHAMZA_TWO_CELL_NEAR` Value identifying Near.

Method Summary

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### LAMALEF_RESIZE_BUFFER

    public static final ArabicOption LAMALEF_RESIZE_BUFFER

  Value identifying Resize buffer.

  When converting from visual to implicit code pages, Lam-Alef characters are expanded to Lam plus Alef, while when converting from implicit to visual code pages, every sequence of Lam followed by Alef is contracted to a Lam-ALef character. The buffer is enlarged or reduced as appropriate.

### LAMALEF_NEAR

    public static final ArabicOption LAMALEF_NEAR

  Value identifying Near.

  When converting from visual to implicit code pages, Lam-Alef characters are expanded to Lam plus Alef consuming the blank space next to it. If no blank space is available, the Lam-Alef character remains as is in the Unicode uFExx range.

  When converting from implicit to visual code pages, Lam plus Alef sequences are compressed to a unique Lam-Alef character; the space resulting from Lam-Alef compression is positioned next to each generated Lam-Alef character.

### LAMALEF_ATBEGIN

    public static final ArabicOption LAMALEF_ATBEGIN

  Value identifying At Begin.

  When converting from visual to implicit code pages, Lam-Alef characters are expanded to Lam plus Alef consuming a blank space at the beginning of the buffer. If no blank space is available, the Lam-Alef character remains as is in the Unicode uFExx range.

  When converting from implicit to visual code pages, Lam plus Alef sequences are compressed to a unique Lam-Alef character; the space resulting from Lam-Alef compression is positioned at the beginning of the buffer.

### LAMALEF_ATEND

    public static final ArabicOption LAMALEF_ATEND

  Value identifying At End.

  When converting from visual to implicit code pages, Lam-Alef characters are expanded to Lam plus Alef consuming a blank space at the end of the buffer. If no blank space is available, the Lam-Alef character remains as is in the Unicode uFExx range.

  When converting from implicit to visual code pages, Lam plus Alef sequences are compressed to a unique Lam-Alef character; the space resulting from Lam-Alef compression is positioned at the end of the buffer.

### LAMALEF_AUTO

    public static final ArabicOption LAMALEF_AUTO

  Value identifying Auto.

  When converting from visual to implicit code pages, Lam-Alef characters are expanded to Lam plus Alef consuming a blank space at the beginning of the buffer with respect to the orientation, i.e. buffer[0] in case of left-to-right and buffer[length - 1] in case of right-to-left. If no blank space is available, the Lam-Alef character remains as is in the Unicode uFExx range.

  When converting from implicit to visual code pages, Lam plus Alef sequences are compressed to a unique Lam-Alef character; the space resulting from Lam-Alef compression is positioned at the beginning of the buffer with respect to the orientation.

### SEEN_NEAR

    public static final ArabicOption SEEN_NEAR

  Value identifying Near.

  Conversion from visual to implicit converts final forms of the Seen family represented by two characters (the three quarters shape and the Tail character) to corresponding final forms represented by one character and a space replacing the Tail. This space is positioned next to the Seen final form.

  In conversion from implicit to visual, each final form of characters in the Seen family (represented by one character) is converted to the the corresponding final form of the Seen family that is represented by two characters, consuming the space next to the Seen character. If there is no space available, it will be converted to one character only which is the three quarters shape Seen.

### SEEN_ATBEGIN

    @Deprecated
    public static final ArabicOption SEEN_ATBEGIN

  Deprecated. this option is deprecated use SEEN_NEAR option
  Value identifying At Begin.

  Conversion from visual to implicit converts final forms of the Seen family represented by two characters (the three quarters shape and the Tail character) to corresponding final forms represented by one character and a space replacing the Tail. The resulting space is moved to the beginning of the buffer.

  In conversion from implicit to visual, each final form of characters in the Seen family (represented by one character) is converted to the the corresponding final form of the Seen family that is represented by two characters, consuming a space at the beginning of the buffer.

### SEEN_AUTO

    @Deprecated
    public static final ArabicOption SEEN_AUTO

  Deprecated. this option is deprecated use SEEN_NEAR option
  Value identifying Auto.

  Same behavior as NEAR for this release

### YEHHAMZA_TWO_CELL_NEAR

    public static final ArabicOption YEHHAMZA_TWO_CELL_NEAR

  Value identifying Near.

  Conversion from visual to implicit converts each Yeh character followed by a Hamza character to a Yeh-Hamza character; the space resulting from the contraction is positioned next to the Yeh-Hamza character.

  In conversion from implicit to visual, each Yeh-Hamza character is expanded to two characters (Yeh and Hamza), consuming the space located next to the original Yeh-Hamza character. If there is no space available, it will be converted to one character which is Yeh.

### YEHHAMZA_TWO_CELL_ATEND

    @Deprecated
    public static final ArabicOption YEHHAMZA_TWO_CELL_ATEND

  Deprecated. this option is deprecated use YEHHAMZA_TWO_CELL_NEAR
  Value identifying At End.

  In conversion from visual to implicit, each Yeh character followed by a Hamza character is contracted to a Yeh-Hamza character (one character); the resulting space is positioned at the end of the buffer.

  In conversion from implicit to visual, each Yeh-Hamza character is expanded to two characters (Yeh and Hamza), consuming the space located at the end of the buffer.

### YEHHAMZA_AUTO

    @Deprecated
    public static final ArabicOption YEHHAMZA_AUTO

  Deprecated. this option is deprecated use YEHHAMZA_TWO_CELL_NEAR
  Value identifying Auto.

  Same behavior as NEAR for this release

### TASHKEEL_KEEP

    public static final ArabicOption TASHKEEL_KEEP

  Value identifying Keep Tashkeel.

  No special processing is done

### TASHKEEL_CUSTOMIZED_WITHZEROWIDTH

    public static final ArabicOption TASHKEEL_CUSTOMIZED_WITHZEROWIDTH

  Value identifying Customized With Zero Width.

  All Tashkeel characters are converted to the corresponding non-spacing (zero-width) characters.

### TASHKEEL_CUSTOMIZED_WITHWIDTH

    public static final ArabicOption TASHKEEL_CUSTOMIZED_WITHWIDTH

  Value identifying Customized With Width.

  All Tashkeel characters are converted to the corresponding spacing characters. This option is not available in case of visual to implicit conversion because Tashkeel characters in the Arabic u06xx range all represent non-spacing (zero-width) characters.

### TASHKEEL_CUSTOMIZED_ATBEGIN

    public static final ArabicOption TASHKEEL_CUSTOMIZED_ATBEGIN

  Value identifying Customized At Begin.

  All Tashkeel characters except for Shadda are replaced by spaces. The resulting spaces are moved to the beginning of the buffer.

### TASHKEEL_CUSTOMIZED_Near

    public static final ArabicOption TASHKEEL_CUSTOMIZED_Near

  Value identifying Customized Near.

  All Tashkeel characters except for Shadda are replaced by spaces. The resulting spaces are moved to the same position of the tashkeel character.

### TASHKEEL_CUSTOMIZED_ATEND

    public static final ArabicOption TASHKEEL_CUSTOMIZED_ATEND

  Value identifying Customized At End.

  All Tashkeel characters except for Shadda are replaced by spaces. The resulting spaces are moved to the end of the buffer.

### TASHKEEL_CUSTOMIZED_RESIZE_BUFFER

    public static final ArabicOption TASHKEEL_CUSTOMIZED_RESIZE_BUFFER

  Value identifying Customized Resize_Buffer.

  All Tashkeel characters except for Shadda are ignored and reseize the data buffer. This done only when the output codepage is 420 or 864.

### TASHKEEL_AUTO

    public static final ArabicOption TASHKEEL_AUTO

  Value identifying Auto.

  Same behavior as KEEP for this release

Package | Class | Use | Tree | Serialized | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD