]> www.fi.muni.cz Git - evince.git/blobdiff - pdf/xpdf/PDFDoc.cc
Import of xpdf code from gpdf.
[evince.git] / pdf / xpdf / PDFDoc.cc
index 9108220db48fb0496f67919042ddbee2d1aba182..031ffc50df93beb099d43ba53dfdc1cbd8566d18 100644 (file)
@@ -18,7 +18,7 @@
 #include <stddef.h>
 #include <string.h>
 #include "GString.h"
-#include "config.h"
+#include "xpdfconfig.h"
 #include "GlobalParams.h"
 #include "Page.h"
 #include "Catalog.h"
@@ -114,6 +114,8 @@ PDFDoc::PDFDoc(BaseStream *strA, GString *ownerPassword,
 }
 
 GBool PDFDoc::setup(GString *ownerPassword, GString *userPassword) {
+  str->reset();
+
   // check header
   checkHeader();
 
@@ -203,8 +205,8 @@ void PDFDoc::checkHeader() {
   }
 }
 
-void PDFDoc::displayPage(OutputDev *out, int page, double zoom,
-                        int rotate, GBool doLinks,
+void PDFDoc::displayPage(OutputDev *out, int page, double hDPI, double vDPI,
+                        int rotate, GBool crop, GBool doLinks,
                         GBool (*abortCheckCbk)(void *data),
                         void *abortCheckCbkData,
                          GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data),
@@ -221,18 +223,19 @@ void PDFDoc::displayPage(OutputDev *out, int page, double zoom,
       links = NULL;
     }
     getLinks(p);
-    p->display(out, zoom, rotate, links, catalog,
+    p->display(out, hDPI, vDPI, rotate, crop, links, catalog,
               abortCheckCbk, abortCheckCbkData,
                annotDisplayDecideCbk, annotDisplayDecideCbkData);
   } else {
-    p->display(out, zoom, rotate, NULL, catalog,
+    p->display(out, hDPI, vDPI, rotate, crop, NULL, catalog,
               abortCheckCbk, abortCheckCbkData,
                annotDisplayDecideCbk, annotDisplayDecideCbkData);
   }
 }
 
 void PDFDoc::displayPages(OutputDev *out, int firstPage, int lastPage,
-                         int zoom, int rotate, GBool doLinks,
+                         double hDPI, double vDPI, int rotate,
+                         GBool crop, GBool doLinks,
                          GBool (*abortCheckCbk)(void *data),
                          void *abortCheckCbkData,
                           GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data),
@@ -240,15 +243,16 @@ void PDFDoc::displayPages(OutputDev *out, int firstPage, int lastPage,
   int page;
 
   for (page = firstPage; page <= lastPage; ++page) {
-    displayPage(out, page, zoom, rotate, doLinks,
+    displayPage(out, page, hDPI, vDPI, rotate, crop, doLinks,
                abortCheckCbk, abortCheckCbkData,
                 annotDisplayDecideCbk, annotDisplayDecideCbkData);
   }
 }
 
-void PDFDoc::displayPageSlice(OutputDev *out, int page, double zoom,
-                             int rotate, int sliceX, int sliceY,
-                             int sliceW, int sliceH,
+void PDFDoc::displayPageSlice(OutputDev *out, int page,
+                             double hDPI, double vDPI,
+                             int rotate, GBool crop,
+                             int sliceX, int sliceY, int sliceW, int sliceH,
                              GBool (*abortCheckCbk)(void *data),
                              void *abortCheckCbkData,
                               GBool (*annotDisplayDecideCbk)(Annot *annot, void *user_data),
@@ -256,7 +260,8 @@ void PDFDoc::displayPageSlice(OutputDev *out, int page, double zoom,
   Page *p;
 
   p = catalog->getPage(page);
-  p->displaySlice(out, zoom, rotate, sliceX, sliceY, sliceW, sliceH,
+  p->displaySlice(out, hDPI, vDPI, rotate, crop,
+                 sliceX, sliceY, sliceW, sliceH,
                  NULL, catalog,
                   abortCheckCbk, abortCheckCbkData,
                   annotDisplayDecideCbk, annotDisplayDecideCbkData);