https://bugs.freedesktop.org/show_bug.cgi?id=66597

--- Comment #6 from Steve White <stevan.wh...@googlemail.com> ---
Khaled,

Several of the bugs pointed out are logic errors in the generation code (for
sure the duplicated characters, and I think also the disappearing/reeappearing
one).  These have nothing to do with glyph naming.

I also pointed out that although Gargi and Lohit attempt (different) AGLFN
schemes, each has bugs in that regard.  This is part of my complaint with the
AGLFN.  In each case, there was sufficient information in the font's feature
tables to produce ToUnicode entries which would have correctly decomposed the
glyphs. Although often LibreOffice PDF generation algorithms use OpenType
tables to populate ToUnicode, here the algorithms instead fell back to AGLFN,
and failed.

It would be best to prefer the OpenType features in building ToUnicode, and
fall back to AGLFN only to break a tie, in case those features would specify
more than one character string for a given glyph.

Another thought:

How to tackle the re-ordering of glyphs (especially, the 'i' and 'ii' vowel
signs) using ToUnicode?  (I don't know if LibreOffice attempts something like
this, I just see it's mostly wrong.)  The idea is based on making compound
glyphs in the internal representation of the PDF file  -- they need not
correspond to slots in the original font.

When a glyph that needs re-ordering (as 'i' and 'ii') is detected, it should be
possible to identify the following consonant cluster.  The entire group,
including the vowel and cluster, could be made a single glyph.  Then the fake
entry for that glyph in the ToUnicode stream would specify characters for the
decomposed cluster, with the vowel re-ordered to the end of the cluster.

Of course, identifying the cluster could be tricky in some cases, but in modern
Devanagari at least, it usually consists of a few half-form consonants followed
by a consonant, or else a single consonant ligature.  (That may be all--need to
consult Unicode ch. 9)

And of course, there are other ways to do it!

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
Libreoffice-bugs@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to