summaryrefslogtreecommitdiff
path: root/tex/context/base/mkxl/font-imp-effects.lmt
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2022-07-06 22:05:18 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2022-07-06 22:05:18 +0200
commit82c674fdcf5bcff4ad0dc0936d638fc729145616 (patch)
tree6ab4ee4417aa22180cd5b3c50ede6a031f8ce3f9 /tex/context/base/mkxl/font-imp-effects.lmt
parent3a55e11c7295abf8f2dfe5e9d1c8b153f4518824 (diff)
downloadcontext-82c674fdcf5bcff4ad0dc0936d638fc729145616.tar.gz
2022-07-06 21:35:00
Diffstat (limited to 'tex/context/base/mkxl/font-imp-effects.lmt')
-rw-r--r--tex/context/base/mkxl/font-imp-effects.lmt17
1 files changed, 14 insertions, 3 deletions
diff --git a/tex/context/base/mkxl/font-imp-effects.lmt b/tex/context/base/mkxl/font-imp-effects.lmt
index 1f9810f93..38d86498a 100644
--- a/tex/context/base/mkxl/font-imp-effects.lmt
+++ b/tex/context/base/mkxl/font-imp-effects.lmt
@@ -238,9 +238,11 @@ local function manipulateeffect(tfmdata)
parameters.hshift = hshift
parameters.vshift = vshift
for unicode, character in next, characters do
- local oldwidth = character.width
- local oldheight = character.height
- local olddepth = character.depth
+ local oldwidth = character.width
+ local oldheight = character.height
+ local olddepth = character.depth
+ local olditalic = character.italic
+ local oldtopaccent = character.topaccent
if oldwidth and oldwidth > 0 then
character.width = oldwidth + wdelta
end
@@ -250,6 +252,15 @@ local function manipulateeffect(tfmdata)
if olddepth and olddepth > 0 then
character.depth = olddepth + ddelta
end
+ if olditalic or oldtopaccent then
+ local factor = character.width / oldwidth
+ if olditalic and olditalic > 0 then
+ character.italic = olditalic * factor
+ end
+ if oldtopaccent and oldtopaccent > 0 then
+ character.topaccent = oldtopaccent * factor
+ end
+ end
end
if mathparameters then
setmathparameters(tfmdata,characters,mathparameters,dx,dy,squeeze,multiplier)