From 67f847d4e7a4d05d95453df7b2285b41f6d72e2e Mon Sep 17 00:00:00 2001 From: Marius Date: Tue, 29 Mar 2011 14:20:13 +0300 Subject: beta 2011.03.29 12:49 --- tex/context/base/font-ctx.lua | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'tex/context/base/font-ctx.lua') diff --git a/tex/context/base/font-ctx.lua b/tex/context/base/font-ctx.lua index e68874a4a..fe32a2420 100644 --- a/tex/context/base/font-ctx.lua +++ b/tex/context/base/font-ctx.lua @@ -99,11 +99,13 @@ setmetatablekey(fontdata, "__index", function(t,k) end) local chardata = allocate() -- chardata +local parameters = allocate() local csnames = allocate() -- namedata local quaddata = allocate() -- quaddata local xheightdata = allocate() -- xheightdata hashes.characters = chardata +hashes.parameters = parameters hashes.quads = quaddata hashes.xheights = xheightdata @@ -113,15 +115,21 @@ setmetatablekey(chardata, "__index", function(t,k) return characters end) -setmetatablekey(quaddata, "__index", function(t,k) +setmetatablekey(parameters, "__index", function(t,k) local parameters = fontdata[k].parameters + t[k] = parameters + return parameters +end) + +setmetatablekey(quaddata, "__index", function(t,k) + local parameters = parameters[k] local quad = parameters and parameters.quad or 0 t[k] = quad return quad end) setmetatablekey(xheightdata, "__index", function(t,k) - local parameters = fontdata[k].parameters + local parameters = parameters[k] local xheight = parameters and parameters.xheight or 0 t[k] = xheight return quad -- cgit v1.2.3