aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/page
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/page')
-rw-r--r--src/cmd/page/pdfprolog.ps29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/cmd/page/pdfprolog.ps b/src/cmd/page/pdfprolog.ps
new file mode 100644
index 00000000..c4c31c92
--- /dev/null
+++ b/src/cmd/page/pdfprolog.ps
@@ -0,0 +1,29 @@
+/Page null def
+/Page# 0 def
+/PDFSave null def
+/DSCPageCount 0 def
+/DoPDFPage {dup /Page# exch store pdfgetpage mypdfshowpage } def
+
+/pdfshowpage_mysetpage { % <pagedict> pdfshowpage_mysetpage <pagedict>
+ dup /CropBox pget {
+ boxrect
+ 2 array astore /PageSize exch 4 2 roll
+ neg exch neg exch 2 array astore /PageOffset exch
+ << 5 1 roll >> setpagedevice
+ } if
+} bind def
+
+/mypdfshowpage % <pagedict> pdfshowpage -
+ { dup /Page exch store
+ pdfshowpage_init
+ pdfshowpage_setpage
+ pdfshowpage_mysetpage
+ save /PDFSave exch store
+ (before exec) VMDEBUG
+ pdfshowpage_finish
+ (after exec) VMDEBUG
+ PDFSave restore
+ } bind def
+
+GS_PDF_ProcSet begin
+pdfdict begin