1namespace Poppler { 2 3class BaseConverter { 4%TypeHeaderCode 5#include <qt5/poppler-qt5.h> 6%End 7 8public: 9 virtual ~BaseConverter(); 10 void setOutputFileName(const QString &outputFileName); 11 void setOutputDevice(QIODevice *device); 12 virtual bool convert() = 0; 13 enum Error 14 { 15 NoError, 16 FileLockedError, 17 OpenOutputError, 18 NotSupportedInputFileError, 19 }; 20 Error lastError() const; 21private: 22 BaseConverter(const Poppler::BaseConverter&); 23}; // class BaseConverter 24 25 26class PSConverter : Poppler::BaseConverter { 27%TypeHeaderCode 28#include <qt5/poppler-qt5.h> 29%End 30 31public: 32 enum PSOption { 33 Printing = 0x00000001, 34 StrictMargins = 0x00000002, 35 ForceRasterization = 0x00000004, 36%If(POPPLER_V0_20_0 -) 37 PrintToEPS = 0x00000008, 38 HideAnnotations = 0x00000010, 39%End 40 }; 41 typedef QFlags<Poppler::PSConverter::PSOption> PSOptions; 42 ~PSConverter(); 43 void setPageList(const QList<int> &pageList); 44 void setTitle(const QString &title); 45 void setHDPI(double hDPI); 46 void setVDPI(double vDPI); 47 void setRotate(int rotate); 48 void setPaperWidth(int paperWidth); 49 void setPaperHeight(int paperHeight); 50 void setRightMargin(int marginRight); 51 void setBottomMargin(int marginBottom); 52 void setLeftMargin(int marginLeft); 53 void setTopMargin(int marginTop); 54 void setStrictMargins(bool strictMargins); 55 void setForceRasterize(bool forceRasterize); 56 void setPSOptions(PSOptions options); 57 PSOptions psOptions() const; 58 bool convert(); 59 60private: 61 PSConverter(const Poppler::PSConverter&); 62}; // class PSConverter 63 64 65class PDFConverter : Poppler::BaseConverter { 66%TypeHeaderCode 67#include <qt5/poppler-qt5.h> 68%End 69 70public: 71 enum PDFOption { 72 WithChanges = 0x00000001, 73 }; 74 typedef QFlags<Poppler::PDFConverter::PDFOption> PDFOptions; 75 virtual ~PDFConverter(); 76 void setPDFOptions(PDFOptions options); 77 PDFOptions pdfOptions() const; 78 bool convert(); 79 80private: 81 PDFConverter(const Poppler::PDFConverter&); 82}; // class PDFConverter 83 84 85}; // namespace Poppler 86 87/* kate: indent-width 4; space-indent on; hl c++; indent-mode cstyle; */ 88