summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w')
-rw-r--r--Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w17
1 files changed, 9 insertions, 8 deletions
diff --git a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
index 6eb6d9fc5b2..6e6c4b26dca 100644
--- a/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
+++ b/Build/source/texk/web2c/luatexdir/pdf/pdfglyph.w
@@ -19,8 +19,8 @@
@ @c
static const char _svn_version[] =
- "$Id: pdfglyph.w 3703 2010-05-27 07:58:34Z taco $"
- "$URL: http://foundry.supelec.fr/svn/luatex/tags/beta-0.60.2/source/texk/web2c/luatexdir/pdf/pdfglyph.w $";
+ "$Id: pdfglyph.w 4131 2011-04-11 13:41:26Z taco $"
+ "$URL: http://foundry.supelec.fr/svn/luatex/tags/beta-0.66.0/source/texk/web2c/luatexdir/pdf/pdfglyph.w $";
#include "ptexlib.h"
@@ -107,16 +107,17 @@ static void print_tm(PDF pdf, pdffloat * tm)
}
@ @c
-static void set_textmatrix(PDF pdf, scaledpos pos, boolean force)
+static void set_textmatrix(PDF pdf, scaledpos pos)
{
boolean move;
pdfstructure *p = pdf->pstruct;
assert(is_textmode(p));
move = calc_pdfpos(p, pos);
- if (force || move) {
+ if (p->need_tm == 1 || move) {
print_tm(pdf, p->tm);
p->pdf.h.m = p->pdf_bt_pos.h.m + p->tm[4].m; /* Tm replaces */
p->pdf.v.m = p->pdf_bt_pos.v.m + p->tm[5].m;
+ p->need_tm = 0;
}
}
@@ -183,9 +184,9 @@ void pdf_place_glyph(PDF pdf, internal_font_number f, int c)
setup_fontparameters(pdf, f);
if (p->f_pdf != p->f_pdf_cur || p->fs.m != p->fs_cur.m) {
set_font(pdf);
- set_textmatrix(pdf, pos, true); /* force Tm setting */
- } else
- set_textmatrix(pdf, pos, false);
+ p->need_tm = 1; /* force Tm setting */
+ }
+ set_textmatrix(pdf, pos);
begin_chararray(pdf);
}
assert(is_charmode(p) || is_chararraymode(p));
@@ -197,7 +198,7 @@ void pdf_place_glyph(PDF pdf, internal_font_number f, int c)
&& (p->pdf_bt_pos.h.m + p->tm[4].m) != p->pdf.h.m)
|| abs(p->tj_delta.m) >= 1000000) {
pdf_goto_textmode(pdf);
- set_textmatrix(pdf, pos, false);
+ set_textmatrix(pdf, pos);
begin_chararray(pdf);
move = calc_pdfpos(p, pos);
}