DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ· RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=36977>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ· INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=36977 ------- Additional Comments From [EMAIL PROTECTED] 2005-10-11 06:59 ------- Every CJK indeographic is a LETTER. A sentence is a sequence of letters and punctuations with NO space required between them. Line breaking rules: A feasible breaking point befor and after a CJK letter, except the follwing punctuations rules. Line breaking is NOT allowed after a punctuation which belongs: unicode General Category Pi [Punctuation, Initial quote] unicode General Category Ps [Punctuation, Open] Line breaking is NOT allowed before a punctuation which belongs: unicode General Category Pf [Punctuation, Final quote] unicode General Category Pe [Punctuation, Close] unicode General Category Po [Punctuation, Other] and Line Break IS [Infix Separator (Numeric)] unicode General Category Po [Punctuation, Other] and Line Break CL [Closing Punctuation] unicode General Category Po [Punctuation, Other] and Line Break NS [Non Starter] unicode General Category Po [Punctuation, Other] and Line Break EX [Exclamation/Interrogation] The rules is trivial. So it's better to let java.text.BreakIterator take care of it. Typesetting Adjustment: (For Chinese, Japanese and Korea is uncertain) Terms: HALFWIDTH: most western character, width is about half of height. FULLWIDTH: most CJK character, width is about equal height. LEFTHALFGLYPH: some CJK punctuation, the glyph only occupy the left half width. such as \u300B \u201D RIGHTHALFGLYPH: some CJK punctuation, the glyph only occupy the right half width. such as \u300A \u201C NOTE: some letters, for example \u201C, is HALFWIDTH in western fonts. In this case, it's glyph occupy whole width, not be considered as HALFGLYPH. Adjustment Rules: R1. If a RIGHTHALFGLYPH follows by a RIGHTHALFGLYPH(IDEOGRAPHIC_FULL_STOP, RIGHT_DOUBLE_QUOTATION_MARK), the first one should be compressed to it's minimum, half width.(opt=half_width, shrink=0) A LEFTHALFGLYPH follows by a LEFTHALFGLYPH would not occur in normal text. Don't consider. R2. Between a FULLWIDTH letter and a HALFWIDTH letter or digit, a small sapce is advised. The samll sapce is set to (opt=half_sapce, shrink=half_sapce) R3. Between 2 FULLWIDTH letter, a small shrink is allowed. 1/16 of width would be good to avoid glyph overlapping. The feature should be configurable. R4. When a line stretch, all feasible breaking point is stretchable. The stretch of a glue between 2 CJK Letter should be smaller than the glue following a punctuation. The ratio is not considered yet. Currently, the TextLayoutManager is not consider it even for western style layout(space between words/space following sentence end dot). R5. When a line shink, first compress HALFGLYPH, HALFGLYPH can be compressed to half width. 2nd, compress the samll sapce between FULLWIDTH letter and HALFWIDTH letter or digit (R2). 3rd, shrink the letterspace(R3). The shrink priority is hard to implement unless modify the knuth algorithm. -- Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.
