Re: Combining characters

On Sat, 2003-09-06 at 00:38, Owen Taylor wrote:
> On Fri, 2003-09-05 at 11:51, Anuradha Ratnaweera wrote:
> > Let me put this in a simple point form using a hypothetical example:
> > 
> > - I have a font (non-unicode) X, which has non latin characters in the
> > range of 32 to 127.
> > - The same character set is defined in Unicode 3/4 from say 4000.
> > - Unicode characters 4001 and 4010 form a single composite character
> > which is the same as character 51 in the font X
> > - There is no Unicode equivalent to the 4001+4010 combination
> > 
> > Now, if I want to render the composite character 4001+4010, how should
> > I proceed?  Is there a way to map unicode sequences to actual
> > (physical) fonts.  Prefarably in the form:
> > 
> > 4001,4010 -> X,51
> Not really sure what you are asking - maybe you can be less
> hypothetical?
> A shaper module's whole purpose in life is to map Unicode character
> sequences to pairs of glyphs from particular fonts.

That's exactly whhat I wanted.

IMHO, mapping unicode character sequences to ghyphs (why pairs?) from a
particular font is a general requirement.  Therefore, I wonder why is it
necessary to write shaper modules for each character set.

Of course, there are languages where unicode sequences do _not_ map to
individual glyphs, where a character set specific shaper is necessary. 
But when such a mapping _is_ available, I thought that there should be a
standard general solution.

> If you have a font, however, that has a incorrect character map
> that assigns ligature glyphs to random ASCII characters, you 
> will have great difficulty getting that to work within the 
> framework of the fontconfig-based backends for Pango.

Therein lies the whole problem.  When a unicode character sequence
(4001, 4010 in my example) represents a single visual glyph WHICH IS NOT
A UNICODE CHARACTER, there is no way to assign a "correct" glyph number
in a particular font.


Attachment: signature.asc
Description: This is a digitally signed message part

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]