To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=87688
------- Additional comments from [EMAIL PROTECTED] Tue Apr 1 20:23:36 +0000 2008 ------- I posted some sample documents. The original document was posted in issue 28203: kashida.sxw. For demonstration purposes, I copied some words to short lines, to show the differences most clearly (kashida_before_patch3.pdf and kashida_after_patch3.pdf). The differences that you can see are actually the result of three patches: this one, the one I posted in issue 60594, which is based on previous fixes from issue 77976. The second line in kashida_before_patch3.pdf demonstrates most clearly the effects of kashida placing. Before the patch, the first word did not receive any kashida, the second word got a kashida before its last letter. After the patch both words get a kashida, and notably in the second word it gets inserted already before the third letter. In the first line in the first word, a kashidas get inserted in a places where they cannot connect. At least in the second word, the cause was in the layout engine and this was fixed in issue 77976. What you see in the first word is probably the result of both bugs. In the implementation of the kashida search were several mistakes. First I just noticed the differences to the results of the usp justification, but I thought that it might be intentionally. Then I found the MS documentation at http://www.microsoft.com/middleeast/msdn/JustifyingText-CSS.aspx, and the priorities in the kashida search seemed to match what the OOo code was trying to do. But the OOo code didn't compare the results of the different priority classes. It simply decided for the first match it found. If it found a match of the 3rd priority at the 2nd letter, it would not get to a match of 1st priority at the 3rd or 4th letter. Also it says: "If more than one connection opportunity have the same highest value, use the opportunity closest to the end of the word." As I said before, if it found a match, the game was over, not getting to the end of the word. And most seriously, there seemed to be a misunderstanding on the letters referenced in the priority classes. First of all, as far as I understand, the letter names refer to shaping groups as they are described in http://unicode.org/book/ch08.pdf in table 8.6. So you should actually check for a group of unicode chars. Where it states, that a kashida may be inserted before a final form of a letter, you have to keep in mind that the only-right-joining characters will have their "final form" also in the middle of a word. Of course, I could not be 100% sure of this interpretation, though it just seemed more logical. But after implementing the changes I just saw that everything matches exactly the way usp would place the kashidas, so I was assured that I got it right. In the longer document you can occasionally see the gaps inside the words in the before-patch version. But that is the other issue... --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
