diff options
author | Philipp Gesang <phg42.2a@gmail.com> | 2013-05-13 16:15:12 +0200 |
---|---|---|
committer | Philipp Gesang <phg42.2a@gmail.com> | 2013-05-13 16:15:12 +0200 |
commit | 6f39e53c424a7bf460f757a36ab4534ca81492ff (patch) | |
tree | 2072d28222a962b7ca7a1c8a7aa29b55a49c0fe2 | |
parent | 78cb8b8b5dace588d4b028394daf8a4f9ff18d1a (diff) | |
download | luaotfload-6f39e53c424a7bf460f757a36ab4534ca81492ff.tar.gz |
address fonts by ids instead of csnames
-rw-r--r-- | luaotfload-auxiliary.lua | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/luaotfload-auxiliary.lua b/luaotfload-auxiliary.lua index 11af445..a41520c 100644 --- a/luaotfload-auxiliary.lua +++ b/luaotfload-auxiliary.lua @@ -68,7 +68,7 @@ local add_fontdata_fallbacks = function (fontdata) metadata = fontdata.shared.rawdata.metadata fontdata.name = metadata.origname or fontdata.name fontdata.units = fontdata.units_per_em - fontdata.size = fontdata.size or fontparameters.size + fontdata.size = fontdata.size or fontparameters.size local resources = fontdata.resources --- for legacy fontspec.lua and unicode-math.lua fontdata.shared.otfdata = { @@ -449,21 +449,28 @@ aux.provides_feature = provides_feature --- font dimensions ----------------------------------------------------------------------- ---- string -> string -> int -local get_math_dimension = function (csname, dimenname) - local fontdata = identifiers[fontid(csname)] +--- int -> string -> int +local get_math_dimension = function (font_id, dimenname) + if type(font_id) == "string" then + font_id = fontid(font_id) --- safeguard + end + local fontdata = identifiers[font_id] local mathdata = fontdata.mathparameters - if mathdata then return mathdata[dimenname] or 0 end + if mathdata then + return mathdata[dimenname] or 0 + end return 0 end aux.get_math_dimension = get_math_dimension ---- string -> string -> unit -local sprint_math_dimension = function (csname, dimenname) - local dim = get_math_dimension(csname, dimenname) - texsprint(luatexbase.catcodetables["latex-package"], dim) - texsprint(luatexbase.catcodetables["latex-package"], "sp") +--- int -> string -> unit +local sprint_math_dimension = function (font_id, dimenname) + if type(font_id) == "string" then + font_id = fontid(font_id) + end + local dim = get_math_dimension(font_id, dimenname) + texsprint(luatexbase.catcodetables["latex-package"], dim, "sp") end aux.sprint_math_dimension = sprint_math_dimension |