summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua')
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua42
1 files changed, 20 insertions, 22 deletions
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua b/Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua
index 006d559454d..5ee567b5b87 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltj-rmlgbm.lua
@@ -12,10 +12,8 @@ local err, warn, info, log = luatexbase.errwarinf(_NAME)
luatexja.load_module('base'); local ltjb = luatexja.base
-local round = tex.round
local cidfont_data = {}
local cache_chars = {}
-local taux_dir = 'luatex-cache/luatexja'
local path = {
localdir = file.join(kpse.expand_var("$TEXMFVAR"), aux_dir),
systemdir = file.join(kpse.expand_var("$TEXMFSYSVAR"), aux_dir),
@@ -30,17 +28,19 @@ local function read_cid_font(cid_name)
if kpsefound and file.isreadable(kpsefound) then
cidfont_data[cid_name] = require(kpsefound)
cache_chars[cid_name] = { [655360] = cidfont_data[cid_name].characters }
- return
elseif file.isreadable(localpath) then
cidfont_data[cid_name] = require(localpath)
cache_chars[cid_name] = { [655360] = cidfont_data[cid_name].characters }
- return
elseif file.isreadable(systempath) then
cidfont_data[cid_name] = require(systempath)
cache_chars[cid_name] = { [655360] = cidfont_data[cid_name].characters }
- return
end
- --
+ if cidfont_data[cid_name] then
+ for i,v in pairs(cidfont_data[cid_name].characters) do
+ if not v.width then v.width = 655360 end
+ v.height, v.depth = 576716.8, 78643.2 -- optimized for jfm-ujis.lua
+ end
+ end
end
-- High-level
@@ -75,13 +75,13 @@ local function mk_rml(name, size, id, cid_name)
-- characters & scaling
if size < 0 then size = -size * 655.36 end
local scale = size / 655360
- local def_height = round(0.88 * size) -- character's default height (optimized for jfm-ujis.lua)
- local def_depth = round(0.12 * size) -- and depth.
+ local def_height = 0.88 * size -- character's default height (optimized for jfm-ujis.lua)
+ local def_depth = 0.12 * size -- and depth.
if not cache_chars[cid_name][size] then
cache_chars[cid_name][size] = {}
for k, v in pairs(cache_chars[cid_name][655360]) do
cache_chars[cid_name][size][k] = {
- index = v.index, width = round(v.width * scale),
+ index = v.index, width = v.width * scale,
height = def_height, depth = def_depth, tounicode = v.tounicode,
}
end
@@ -140,19 +140,19 @@ function fonts.define.read(name, size, id)
end
cid_reg, cid_order = string.match(s, "^(.-)%-(.-)%-(%d-)$")
if not cid_reg then
- cid_reg, cid_order = string.match(s, "^(.-)%-(.-)$")
+ cid_reg, cid_order = string.match(s, "^(.-)%-(.-)$")
end
cid_name = cid_reg .. '-' .. cid_order
if not cidfont_data[cid_name] then
- read_cid_font(cid_name)
- if not cidfont_data[cid_name] then
- ltjb.package_error('luatexja',
- "bad cid key `" .. s .. "'",
- "I couldn't find any non-embedded font information for the CID\n" ..
- '`' .. s .. "'. For now, I'll use `Adobe-Japan1-6'.\n"..
- 'Please contact the LuaTeX-ja project team.')
- cid_name = "Adobe-Japan1"
- end
+ read_cid_font(cid_name)
+ if not cidfont_data[cid_name] then
+ ltjb.package_error('luatexja',
+ "bad cid key `" .. s .. "'",
+ "I couldn't find any non-embedded font information for the CID\n" ..
+ '`' .. s .. "'. For now, I'll use `Adobe-Japan1-6'.\n"..
+ 'Please contact the LuaTeX-ja project team.')
+ cid_name = "Adobe-Japan1"
+ end
end
return mk_rml(basename, size, id, cid_name)
else
@@ -161,6 +161,4 @@ function fonts.define.read(name, size, id)
end
-read_cid_font("Adobe-Japan1")
-
-
+read_cid_font("Adobe-Japan1") \ No newline at end of file