diff options
Diffstat (limited to 'tex/context/base/mkiv/driv-shp.lua')
-rw-r--r-- | tex/context/base/mkiv/driv-shp.lua | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/tex/context/base/mkiv/driv-shp.lua b/tex/context/base/mkiv/driv-shp.lua index 26bb06b39..b9298176a 100644 --- a/tex/context/base/mkiv/driv-shp.lua +++ b/tex/context/base/mkiv/driv-shp.lua @@ -338,7 +338,9 @@ flush_character = function(current,font,char,factor,vfcommands,pos_h,pos_v,pos_r width, height, depth, factor = getwhd(current,true) naturalwidth = width if factor ~= 0 then - width = (1.0 + factor/1000000.0) * width + -- width = (1.0 + factor/1000000.0) * width + width = width + width * factor/1000000.0 + -- width = width + width * 0.000001 * factor end else width = data.width or 0 @@ -369,10 +371,10 @@ flush_character = function(current,font,char,factor,vfcommands,pos_h,pos_v,pos_r pos_v = pos_v + y end pushorientation(orientation,pos_h,pos_v) - flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,factor,naturalwidth,f,e) + flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,naturalwidth,factor,width,f,e) poporientation(orientation,pos_h,pos_v) else - flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,factor,naturalwidth,f,e) + flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,naturalwidth,factor,width,f,e) end end return width, height, depth @@ -1280,6 +1282,8 @@ function lpdf.convert(box,smode,objnum,specification) -- temp name objectnumber = objnum, } + lastfont = nil -- this forces a sync each page / object + if getid(box) == vlist_code then vlist_out(box) else |