OSDN Git Service

Japanese version of the manual (Section 7 and 8).
[luatex-ja/luatexja.git] / src / mk-rmlgbm-data.tex
index aa6187b..d3b7cdd 100644 (file)
@@ -5,67 +5,75 @@
 \usepackage{luacode}
 
 \begin{luacode}
-local fontdata = containers.read(fonts.otf.cache, 'kozminpr6n-regular')
-
--- from fonts.otf.otf_to_tfm()
-local tfmdata
-fontdata.shared = fontdata.shared or {
-   featuredata = { },
-   anchorhash  = { },
-   initialized = false,
-}
-tfmdata = fonts.otf.copy_to_tfm(fontdata)
-tfmdata.unique = tfmdata.unique or { }
-tfmdata.shared = tfmdata.shared or { } -- combine
-local shared = tfmdata.shared
-shared.otfdata = fontdata
-shared.features = features -- default
-shared.dynamics = { }
-shared.processes = { }
-tfmdata.luatex = fontdata.luatex
-tfmdata.indices = fontdata.luatex.indices
-tfmdata.unicodes = fontdata.luatex.unicodes
-tfmdata.marks = fontdata.luatex.marks
-tfmdata.originals = fontdata.luatex.originals
-tfmdata.changed = { }
-tfmdata.has_italic = fontdata.metadata.has_italic
-if not tfmdata.language then tfmdata.language = 'dflt' end
-if not tfmdata.script   then tfmdata.script   = 'dflt' end
-_, shared.features = fonts.otf.set_features(tfmdata,fonts.define.check(features,fonts.otf.features.default))
-
--- from fonts.otf.read_from_open_type()
-tfmdata = fonts.tfm.scale(tfmdata, 655360)
-
--- delete extra data
-fontdata.subfonts = nil
-fontdata.metadata = {}
-fontdata.pfminfo = {}
-fontdata.luatex.filename = 'dummy.otf'
-fontdata.luatex.foundfilename = nil
-fontdata.size = nil
-fontdata.time = nil
-fontdata.glyphs = nil
-fontdata.luatex.indices = nil
-fontdata.luatex.unicodes = nil
-fontdata.luatex.originals = nil
-fontdata.luatex.tounicode = nil
-tfmdata.indices = nil
-tfmdata.descriptions = {}
-
-tfmdata.psname = ''
-tfmdata.filename = ''
-tfmdata.fontname = ''
-tfmdata.fullname = ''
-tfmdata.name = ''
-
-for k, v in pairs(tfmdata.characters) do
-   tfmdata.characters[k].height = nil
+function mkrmlgbm(nonfilename,opfilename)
+       local fontdata = containers.read(fonts.otf.cache, nonfilename)
+               
+       -- from fonts.otf.otf_to_tfm()
+       local tfmdata
+       fontdata.shared = fontdata.shared or {
+          featuredata = { },
+          anchorhash  = { },
+          initialized = false,
+       }
+       tfmdata = fonts.otf.copy_to_tfm(fontdata)
+       tfmdata.unique = tfmdata.unique or { }
+       tfmdata.shared = tfmdata.shared or { } -- combine
+       local shared = tfmdata.shared
+       shared.otfdata = fontdata
+       shared.features = features -- default
+       shared.dynamics = { }
+       shared.processes = { }
+       tfmdata.luatex = fontdata.luatex
+       tfmdata.indices = fontdata.luatex.indices
+       tfmdata.unicodes = fontdata.luatex.unicodes
+       tfmdata.marks = fontdata.luatex.marks
+       tfmdata.originals = fontdata.luatex.originals
+       tfmdata.changed = { }
+       tfmdata.has_italic = fontdata.metadata.has_italic
+       if not tfmdata.language then tfmdata.language = 'dflt' end
+       if not tfmdata.script   then tfmdata.script   = 'dflt' end
+       _, shared.features = fonts.otf.set_features(tfmdata,fonts.define.check(features,fonts.otf.features.default))
+       
+       -- from fonts.otf.read_from_open_type()
+       tfmdata = fonts.tfm.scale(tfmdata, 655360)
+       
+       -- delete extra data
+       fontdata.subfonts = nil
+       fontdata.metadata = {}
+       fontdata.pfminfo = {}
+       fontdata.luatex.filename = 'dummy.otf'
+       fontdata.luatex.foundfilename = nil
+       fontdata.size = nil
+       fontdata.time = nil
+       fontdata.glyphs = nil
+       fontdata.luatex.indices = nil
+       fontdata.luatex.unicodes = nil
+       fontdata.luatex.originals = nil
+       fontdata.luatex.tounicode = nil
+       tfmdata.indices = nil
+       tfmdata.descriptions = {}
+       
+       tfmdata.psname = ''
+       tfmdata.filename = ''
+       tfmdata.fontname = ''
+       tfmdata.fullname = ''
+       tfmdata.name = ''
+       tfmdata.embedding = 'no'
+       tfmdata.cache = 'yes'
+       
+       for k, v in pairs(tfmdata.characters) do
+          tfmdata.characters[k].height = nil
+       end
+       
+       -- for luaotfload
+       fontdata.pfminfo.os2_capheight = 0
+       
+       table.tofile(opfilename, tfmdata, 'return', false, true, false)
 end
-
--- for luaotfload
-fontdata.pfminfo.os2_capheight = 0
-
-table.tofile('luatexja-rmlgbm-data.lua', tfmdata, 'return', false, true, false)
+mkrmlgbm('AdobeMingStd-Light', 'luatexja-cid-std-adobe-cns1.lua')
+mkrmlgbm('AdobeSongStd-Light', 'luatexja-cid-std-adobe-gb1.lua')
+mkrmlgbm('KozMinPr6N-Regular', 'luatexja-cid-std-adobe-japan1.lua')
+mkrmlgbm('AdobeMyungjoStd-Medium', 'luatexja-cid-std-adobe-korea1.lua')
 \end{luacode}
 
 \begin{document}