summaryrefslogtreecommitdiff
path: root/Build/source/texk/xdvipdfmx/src/dvipdfmx.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/xdvipdfmx/src/dvipdfmx.c')
-rw-r--r--Build/source/texk/xdvipdfmx/src/dvipdfmx.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/Build/source/texk/xdvipdfmx/src/dvipdfmx.c b/Build/source/texk/xdvipdfmx/src/dvipdfmx.c
index 8339a315c06..30e5a07d144 100644
--- a/Build/source/texk/xdvipdfmx/src/dvipdfmx.c
+++ b/Build/source/texk/xdvipdfmx/src/dvipdfmx.c
@@ -1,4 +1,4 @@
-/* $Header: /home/cvsroot/dvipdfmx/src/dvipdfmx.c,v 1.45 2005/07/30 11:44:18 hirata Exp $
+/* $Header: /home/cvsroot/dvipdfmx/src/dvipdfmx.c,v 1.47 2006/12/11 13:23:26 chofchof Exp $
This is xdvipdfmx, an extended version of...
@@ -675,12 +675,13 @@ do_dvi_pages (void)
page_no = page_ranges[i].first;
while (dvi_npages() > 0) {
if (page_no < dvi_npages()) {
- double w, h;
+ double w, h, xo, yo;
char lm;
/* Users want to change page size even after page is started! */
w = page_width; h = page_height; lm = landscape_mode;
- dvi_scan_paper_size(page_no, &w, &h, &lm);
+ xo = x_offset; yo = y_offset;
+ dvi_scan_paper_size(page_no, &w, &h, &xo, &yo, &lm);
if (lm != landscape_mode) {
SWAP(w, h);
landscape_mode = lm;
@@ -689,6 +690,10 @@ do_dvi_pages (void)
page_width = w;
page_height = h;
}
+ if (x_offset != xo || y_offset != yo) {
+ x_offset = xo;
+ y_offset = yo;
+ }
if (page_width != paper_width ||
page_height != paper_height) {
mediabox.llx = 0.0;
@@ -843,7 +848,7 @@ main (int argc, char *argv[])
if (dvi2pts == 0.0)
ERROR("dvi_init() failed!");
- dvi_scan_paper_size(0, &paper_width, &paper_height, &landscape_mode);
+ dvi_scan_paper_size(0, &paper_width, &paper_height, &x_offset, &y_offset, &landscape_mode);
if (landscape_mode) {
SWAP(paper_width, paper_height);
}