On 11/30/2015 2:19 PM, Ulrike Fischer wrote:
Am Mon, 30 Nov 2015 12:50:22 +0100 schrieb Ulrike Fischer:
The curious thing is that not all kern values are affected. I played
a bit around also with latex examples (and luaotfload) and got a
different value only for va but not for VA or Va:
I think I found the reason why only va is affected. The relevant
part of the ligtable looks like this:
(STOP)
(LABEL C k)
(LABEL C v)
(KRN C a R -0.054398) %<--
(LABEL C w)
(KRN C e R -0.027199)
(KRN C a R -0.027199) %<--
(KRN C o R -0.027199)
(KRN C c R -0.027199)
(STOP)
As one can see it this section there are two settings for char a -
the one for va and the other for wa. And luatex picks up the second
value. If one inserts a (STOP) or remove the second (KRN C a R
-0.027199) the problem is gone.
The question is if this is a luatex bug or if luatex does reveal a
bug in the ligtable of cmr12 ;-).
It looks like the first has to win which indeed happens in kern lookups.
So, now we do the same in the tolua interface. A patched version now gives
v={
["depth"]=0,
["height"]=338603,
["italic"]=10695,
["kerns"]={
[97]=-42780,
[99]=-21390,
[101]=-21390,
[111]=-21390,
},
["width"]=406410,
}
w={
["depth"]=0,
["height"]=338603,
["italic"]=10695,
["kerns"]={
[97]=-21390,
[99]=-21390,
[101]=-21390,
[111]=-21390,
},
["width"]=556140,
}
of course one can wonder if va and wa need a different kern and
Taco & 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
-----------------------------------------------------------------