local ltjw_apply_ashift_math = ltjw.apply_ashift_math
local ltjw_apply_ashift_disc = ltjw.apply_ashift_disc
local min, max = math.min, math.max
+local rule_subtype = (status.luatex_version>=85) and 3 or 0
local function calc_np_aux_glyph_common(lp)
Np.nuc = lp
Np.first= (Np.first or lp)
end
local r
if adj_depth>node_depth then
- r = node_new(id_rule)
+ r = node_new(id_rule,rule_subtype)
setfield(r, 'width', 0); setfield(r, 'height', 0)
setfield(r, 'depth',adj_depth); setfield(r, 'dir', tex_dir)
set_attr(r, attr_icflag, PROCESSED)
local min, max = math.min, math.max
+local rule_subtype = (status.luatex_version>=85) and 3 or 0
+
-- 和文文字の位置補正(横)
local function capsule_glyph_yoko(p, met, char_data, head, dir)
if not char_data then return node_next(p), head, p end
setfield(p, 'yoffset', getfield(p, 'yoffset') - kbl - fshift.down)
return node_next(p), head, p
elseif ht_diff >= 0 and dp_diff >=0 then -- rule
- local box = node_new(id_rule)
+ local box = node_new(id_rule,rule_subtype)
setfield(p, 'yoffset', getfield(p, 'yoffset') - kbl - fshift.down)
setfield(box, 'width', 0)
setfield(box, 'height', fheight - kbl)
setfield(lp, 'yoffset', getfield(lp, 'yoffset') - y_adjust)
end
if adj_depth>node_depth then
- local r = node_new(id_rule)
+ local r = node_new(id_rule,rule_subtype)
setfield(r, 'width', 0); setfield(r, 'height', 0)
setfield(r, 'depth', adj_depth); setfield(r, 'dir', tex_dir)
set_attr(r, attr_icflag, PROCESSED)