Hi Hans, Pablo, et al.

I'm the admin of GNU FreeFont.  I'll respond to some of these points.

1) I have yet to reproduce Pablo's output PDF on either of two systems.  As
I am unfamiliar with ConTeXt, I can only guess how it was built.  I tried
the file quoted here as input to the 'context' command, but it chokes on
the \showfontkerns line.  It would help very much to have a working example
with the proper command line to build it.

2) I understood that ConTeXt only uses the old-style TrueType 'kern' table,
rather than the OpenType 'kern' GPOS lookup.  If that is the case, I would
suggest that you consider to change the  logic to first use the OpenType
lookup, and if it doesn't exist, fall back to the TrueType table. Several
applications are already complaining that both exist; the plan is to drop
support for the TrueType table in FreeFont.

3) In most applications, the script of a run of text is determined from the
Unicode.  This is the assumption made in FreeFont.  The GNU FreeFont policy
starts from its essence as a Unicode font, in which no particular script is
default. (Some generic features that are not specific to any script, are in

There was a suggestion that Latin kerns should be activated by
{script,lang}={dflt,dflt}.  Let me ask, should Devanagari kerns also be
activated by {dflt, dflt}?  If not, why?

It appears that there maybe some conflict her with TeX implementaions.  I
don't completely understand this.  Maybe we can find a solution.

4) I have written something like Pablo's test using XeTeX and fontspec.
Kerning works very well with GNU FreeFont.  Find attached.

5) There was also a report that OpenType kerning doesn't work in some
E-Book readers (I know this isn't the forum for that, but ...) .  My iriver
Story kerns very nicely text in FreeSerif.  Can I get an example of an
E-reader for which kerning fails?  (I really don't doubt that they exist!)


On Fri, Nov 30, 2012 at 10:13 AM, Hans Hagen <pra...@wxs.nl> wrote:

> On 11/30/2012 8:06 AM, Pablo Rodríguez wrote:
>> Hi there,
>> sorry for bothering again with this issue, but I need to be sure in
>> order to properly report to the font developer of FreeSerif.
>> I have the following file:
>> \usemodule[simplefonts][size=**25pt]
>> \definefontfeature[latins][**default][script=latn]
>> \setmainfont[FreeSerif]
>> \starttext
>> \showfontkerns
>> dadedidodufafefifofufrflftlale**lilolutatetitotu\par
>> \addfs{latins}
>> dadedidodufafefifofufrflftlale**lilolutatetitotu\par
>> \stoptext
>> The first line has no GPOS kern enabled and the second line has it.
>> In order to report it to the font developer (I have the problem not with
>> ConTeXt, but with my ereader [I used ConTeXt to check the font
>> features), I have the following questions:
>> -In the example above, is the old TrueType kern enabled on the first line?
>> -If not, how can I enable it, without enabling the liga or kern OpenType
>> features?
>> I need this to see the actual kerning form the old TrueType kern table
>> (I suspect it hasn't the same values as the OpenType kern feature).
> We don't really make a distinction. Kerns are either a property of a
> character (truetype method) or are organized as lookups. Both are driven by
> 'kern' and it's not possible to choose a specific method as it's font
> driven. In the first case, enabling the kern feature will also enable the
> kerns and there is no dependency on language and script. In the second case
> a language script combination drives the injection of kerns. So, for each
> combination there can be different kerns (won't happen often).
> Now, if a font designer decides to group kerns according to languages
> (makes less sense than for instance grouping ligatures which do have a
> dependency on languages) he/she has to make sure that it's done in such a
> way that it doesn't lock out.
> For instance, you can have kerns (optionally in your font organized in
> classes) that kerns latin characters and group them in latn/dflt and do
> something similar for latn/<anylanguage>  but then you expect the user to
> choose the right combination. So, choosing latn/dflt can lock out greek or
> whatever. This means that when one defines kerns for say devanagari but
> also wants to have mixed in latin/* scripts supported, one could best also
> enable latn/* kerns there (just add lookups to the feature specification).
> As the serif font you use has support for many scripts, extra care has to
> be taken for mixed usage. Also, normally a dflt/dflt combination is defined
> (read: no script or language chosen) which should work out okay for most
> cases. Anyhow, in the serif font (1) a dflt/dflt combination has to be
> supported (added) and (2) you/someone needs to check if when you choose
> greek, you still got kerning for latin.
> Hans
> ------------------------------**------------------------------**-----
>                                           Hans Hagen | PRAGMA ADE
>               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
>     tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
>                                              | www.pragma-pod.nl
> ------------------------------**------------------------------**-----
> ______________________________**______________________________**
> _______________________
> If your question is of interest to others as well, please add an entry to
> the Wiki!
> maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/**
> listinfo/ntg-context <http://www.ntg.nl/mailman/listinfo/ntg-context>
> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive  : 
> http://foundry.supelec.fr/**projects/contextrev/<http://foundry.supelec.fr/projects/contextrev/>
> wiki     : http://contextgarden.net
> ______________________________**______________________________**
> _______________________

Attachment: kern-xetex.tex
Description: TeX document

If your question is of interest to others as well, please add an entry to the 

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net

Reply via email to