Issue 42662 - Missing dotted circle breaks display of invalid combining sequences
Summary: Missing dotted circle breaks display of invalid combining sequences
Status: CONFIRMED
Alias: None
Product: Internationalization
Classification: Code
Component: code (show other issues)
Version: 680m79
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords: oooqa
Depends on:
Blocks: 41707
  Show dependency tree
 
Reported: 2005-02-13 05:31 UTC by samphan
Modified: 2013-08-07 15:00 UTC (History)
6 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Text document with invalid combining character sequence (6.94 KB, application/vnd.oasis.opendocument.text)
2005-02-13 06:31 UTC, samphan
no flags Details
Screenshot of the text document loaded in Writer on Linux (46.71 KB, image/png)
2005-02-13 06:34 UTC, samphan
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description samphan 2005-02-13 05:31:27 UTC
Section 5.13 of the Unicode 4.0 standard - 'Rendering Nonspacing Marks' -
recommends a method called 'Show Hidden' to indicate the inability to draw an
invalid combining character sequence. It does so by drawing the base character
first and then rendering the nonspacing mark as an individual unit - with the
nonspacing mark positioned on a dotted circle. The method is implemented in OOo.
However, the implementation on Windows is currently broken, see issue 42171. The
feature only works on Linux now.

The problem is - not all fonts have this dotted circle glyph. In particular, by
far the most popular fonts used in Thailand are the Thai-specific fonts shipped
with Windows (Angsana, Browalia, Cordia, etc.).  These all lack the dotted
circle glyphs. In case the glyph is missing, there should be a fallback
mechanism. Currently OOo seems to do nothing.

Test case: 
- Currently, you have to test it on Linux. Load the attached Writer document. It
has three lines containing a Thai base consonant 'gor gai', three tone marks
'mai ek' (the last two are invalid and couldn't be displayed), and another 'gor
gai'. See the attached screenshot.

1) The first line is formatted using the default Lucidasans, the second using
Norasi, both of them have the dotted circle. You can see that the excess marks
are shown individually on each dotted circle.

2) The third line is formatted using the Windows Thai font 'Angsana New'. You
can try other fonts that have Thai but not dotted circle (all Windows Thai
fonts). There'll be a non-spacing black box that overstrike the first gor-gai.
So you can't tell what are in the invalid sequence.

To handle this, there should be a fallback mechanism in case there's no dotted
circle glyph to use. The possibility are using the 'missing glyph shape' (white
box) like Uniscribe
(http://www.microsoft.com/typography/otfntdev/thaiot/shaping.aspx) or simply
using space. The point is to place each combining character individually so the
users can see what the error is. Therefore the fallback glyph must be spacing.

This issue should also be tested on Windows when the dotted circle feature is
working.
Comment 1 samphan 2005-02-13 06:31:22 UTC
Created attachment 22544 [details]
Text document with invalid combining character sequence
Comment 2 samphan 2005-02-13 06:34:09 UTC
Created attachment 22545 [details]
Screenshot of the text document loaded in Writer on Linux
Comment 3 arthit 2005-02-18 22:30:34 UTC
Test with OOo 1.9.19. Confirmed.
Comment 4 arthit 2005-02-18 22:32:27 UTC
correction:

Test with OOo 1.9.79, using test case in attachment id 22544. Confirmed.
Comment 5 Martin Hollmichel 2005-05-22 07:38:13 UTC
set target to OOo Later.
Comment 6 falko.tesch 2005-10-20 17:38:53 UTC
FT: Please verify and fix if applicable, thx.