diff options
author | Hans Hagen <pragma@wxs.nl> | 2011-03-29 12:49:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2011-03-29 12:49:00 +0200 |
commit | 28621e7ae94bca4954eecd07da1d542711daeb18 (patch) | |
tree | a71bc7bc0e6d86c301459be4a8681f5a714853aa /tex/context/base/font-ctx.lua | |
parent | 1a2108ffa6b5808b0117aee0e6ff26d4503a06e2 (diff) | |
download | context-28621e7ae94bca4954eecd07da1d542711daeb18.tar.gz |
beta 2011.03.29 12:49
Diffstat (limited to 'tex/context/base/font-ctx.lua')
-rw-r--r-- | tex/context/base/font-ctx.lua | 12 |
1 files changed, 10 insertions, 2 deletions
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 |