diff options
author | Hans Hagen <pragma@wxs.nl> | 2011-06-25 11:24:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2011-06-25 11:24:00 +0200 |
commit | 2f44003aab284c595680e9a84b9891b2b9fabb66 (patch) | |
tree | 61649b0110ac9e626545c8032d8aa1814f5fc9f5 /tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua | |
parent | bddac3f564687065474739c7face6fcd93ceea69 (diff) | |
download | context-2f44003aab284c595680e9a84b9891b2b9fabb66.tar.gz |
beta 2011.06.25 11:24
Diffstat (limited to 'tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua')
-rw-r--r-- | tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua b/tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua new file mode 100644 index 000000000..3878ae648 --- /dev/null +++ b/tex/generic/context/luatex/luatex-fonts-demo-vf-1.lua @@ -0,0 +1,38 @@ +local identifiers = fonts.hashes.identifiers + +return function(specification) + local f1, id1 = fonts.constructors.readanddefine('lmroman10-regular', specification.size) + local f2, id2 = fonts.constructors.readanddefine('lmsans10-regular', specification.size) + local f3, id3 = fonts.constructors.readanddefine('lmtypewriter10-regular',specification.size) + if f1 and f2 and f3 then + f1.properties.name = specification.name + f1.properties.virtualized = true + f1.fonts = { + { id = id1 }, + { id = id2 }, + { id = id3 }, + } + local color = { [0] = + { "special", "pdf:0 g" }, + { "special", "pdf:1 0 0 rg" }, + { "special", "pdf:0 1 0 rg" }, + { "special", "pdf:0 0 1 rg" }, + } + local chars = { + identifiers[id1].characters, + identifiers[id2].characters, + identifiers[id3].characters, + } + for u, v in next, f1.characters do + local n = math.floor(math.random(1,3)+0.5) + local c = chars[n][u] or v + v.commands = { color[n], { 'slot', n, u }, color[0] } + v.kerns = nil + v.width = c.width + v.height = c.height + v.depth = c.depth + v.italic = nil + end + end + return f1 +end |