diff options
author | Bo Xu <bo_xu@foxitsoftware.com> | 2014-07-14 13:22:47 -0700 |
---|---|---|
committer | Bo Xu <bo_xu@foxitsoftware.com> | 2014-07-14 13:22:47 -0700 |
commit | 9114e831cc8ae619ce541719887c5d7c2fc4e6d1 (patch) | |
tree | 4940928e138a7896f938b8d41bd2055fec51c1e3 /fpdfsdk/src/fpdfview.cpp | |
parent | 8daab317ff959905e926b861a7d2aa876fd10429 (diff) | |
download | pdfium-9114e831cc8ae619ce541719887c5d7c2fc4e6d1.tar.xz |
Add support to extract viewer preference
This change adds the support to extract "NumCopies", "PrintPageRange", "Duplex" viewer preferences for printing.
BUG=169120
R=bo_xu@foxitsoftware.com, vitalybuka@chromium.org
Review URL: https://codereview.chromium.org/345123002
Diffstat (limited to 'fpdfsdk/src/fpdfview.cpp')
-rw-r--r-- | fpdfsdk/src/fpdfview.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/fpdfsdk/src/fpdfview.cpp b/fpdfsdk/src/fpdfview.cpp index a9aa9a8ff2..8a97c286aa 100644 --- a/fpdfsdk/src/fpdfview.cpp +++ b/fpdfsdk/src/fpdfview.cpp @@ -859,6 +859,37 @@ DLLEXPORT FPDF_BOOL STDCALL FPDF_VIEWERREF_GetPrintScaling(FPDF_DOCUMENT documen return viewRef.PrintScaling(); } +DLLEXPORT int STDCALL FPDF_VIEWERREF_GetNumCopies(FPDF_DOCUMENT document) +{ + CPDF_Document* pDoc = (CPDF_Document*)document; + if (!pDoc) return 1; + CPDF_ViewerPreferences viewRef(pDoc); + return viewRef.NumCopies(); +} + +DLLEXPORT FPDF_PAGERANGE STDCALL FPDF_VIEWERREF_GetPrintPageRange(FPDF_DOCUMENT document) +{ + CPDF_Document* pDoc = (CPDF_Document*)document; + if (!pDoc) return NULL; + CPDF_ViewerPreferences viewRef(pDoc); + return viewRef.PrintPageRange(); +} + +DLLEXPORT FPDF_DUPLEXTYPE STDCALL FPDF_VIEWERREF_GetDuplex(FPDF_DOCUMENT document) +{ + CPDF_Document* pDoc = (CPDF_Document*)document; + if (!pDoc) return DuplexUndefined; + CPDF_ViewerPreferences viewRef(pDoc); + CFX_ByteString duplex = viewRef.Duplex(); + if (FX_BSTRC("Simplex") == duplex) + return Simplex; + if (FX_BSTRC("DuplexFlipShortEdge") == duplex) + return DuplexFlipShortEdge; + if (FX_BSTRC("DuplexFlipLongEdge") == duplex) + return DuplexFlipLongEdge; + return DuplexUndefined; +} + DLLEXPORT FPDF_DEST STDCALL FPDF_GetNamedDestByName(FPDF_DOCUMENT document,FPDF_BYTESTRING name) { if (document == NULL) |