Apache OpenOffice (AOO) Bugzilla – Issue 61224
Incorrect placement of glyphs in complex text in print view
Last modified: 2007-09-19 14:50:21 UTC
Placement of specific glyphs in Khmer is incorrect in print view of Writer, but correct in Web view. The problem affects certain superscript and subscript characters in fonts that use marks. The defect is incorrect horizontal placement of superscript and subscript glyphs. It seems as if instead of advancing to the next cluster, horizontal position is moved back to a position before (to the left of) the positoin of the cluster that is being processed. The fact that web view is correct makes us think that the problem is not in ICU. I wonder if it could be related to Issue 42975, which in theory had been fixed in 2005 by the modification of the way in which OOo interprets the input from ICU (By Herbert and Dan Williams) in gslpatches2 (I don't find the issue number). I am attaching two views (print view and web view), each one of them with two lines that represent 1) Line above in the examples. The subscript is placed to the left of the consonant (when it should be below), and any text that follows it is placed with respect to the subscript, and therefore conflicts with the consonant that was supposed to be above the subscript. 2) Line below. A problem with superscript in a slipt vowel (one part before the consonant and another one above), in which the second part of the split vowel (the one that goes above) is placed before the whole cluster, by itself, and the rest of the cluster is sent to the right, almost as a separate cluster. Both problems (probably the same), seem (to us) to be related to the handling of marks. Incorrect view (print view): http://www.khmeros.info/ooo/issues/printview.png Correct: http://www.khmeros.info/ooo/issues/webview.png
pl->hdu: please have a look
Yes, the problem isn't in ICU but in the "adjust layout for one device to another device" routine. The glyph cluster boundaries are essential for this task and issue 39982 changed them somewhat (it has been integrated in SRC680m75). Was it ok in the beta?
I don't know. I don't have the beta (was it m84?). Do you know where i can find it? I will test it.
setting a realistic target
Herbert, Targeting this to 3.0 would be a huge blow for us. We cannot distribute OpenOffice in Khmer if it does not render the script correctly, and we cannot distribute Linux without OpenOffice. The whole migration plan of the Cambodian Government would just collapse. We tend to think that the problem is more with the managment of anchors that with cluster recognition, because the text is displaced to the left while in the middle of a cluster, and not to the right, as in the case of moving to a new cluster. Fonts that do not use anchors do not seem to have this problem. It is at the moment in which anchor calculations should take place (vertically) that the displacement to the left happens. We use fonts that use anchors for vertical placement of characters, as in some cases the above signs need to be moved up because there is another sign on the way, or the below vowels need to be moved down because there are subjoined consonants (1 or 2).
Please provide a bugdoc matching to your screenshots and specify where to get the font that has the problem. Maybe this issue was already accidentially fixed by e.g. issue 62919.
Please find attached bugdoc. Support for Khmer has improved in 2.0.2 final, some of the problems have dissapeared, such as the first problem in the bugdoc. The second issue is still present. The fonts necessary to reproduce the issue are: KhmerOSmuol.ttf KhmerOSsys.ttf and they can be found in: http://sourceforge.net/project/showfiles.php?group_id=133361&package_id=163973
Created attachment 35500 [details] Bugdoc
Found it: when the layout result contains interleaved glyph cluster (e.g. pLogClusters[]={1,1,2,1} for the second line in the bugdoc) then the adjustment should be started at the leftmost glyph of each cluster.
Yiiiiipi !!!! Thanks Herbert ! This was the last major problem for distributing Linux in Khmer.
Retargeting to 2.1
ready for QA.
'mh' decided to postpone integration of CWS 'icuupgrade' to OOo2.2, aligning target.
SBA: Please note that this CWS will pass the QA tests soon and will be integrated in the soon-to-come (next week, I heard) source tree for OOo 2.2. It is "common" that Linux distributors use a version that is not exactly the QA-blessesd release (or "stable version") in favor for their "personal" favorite fixes and features. So there will be a way to distribute a Khmer Linux with an integrated OpenOffice.org version that does include this fix without having to wait for the release of OOo 2.2.
SBA: Verified in CWS isuupgrade.
We have been testing the patch and rendering works correctly for Khmer. The problem is solved and we do not see any negative side-effects. SBA: Thanks. We will submit it to the distributions we work with, for 2.1
SBA: OK in OOG680_m2 (OOo 2.3). Closed.