summaryrefslogtreecommitdiff
path: root/public
diff options
context:
space:
mode:
authorthestig <thestig@chromium.org>2016-07-18 13:45:44 -0700
committerCommit bot <commit-bot@chromium.org>2016-07-18 13:45:44 -0700
commitfdb35ffb8d4bd283dd8f5905936f5c400fea3394 (patch)
tree715c7842a6a3b654ec95c11cd05ecf9a8d7900a4 /public
parent34965459f4f53a77f6c925292304eface57d12c6 (diff)
downloadpdfium-fdb35ffb8d4bd283dd8f5905936f5c400fea3394.tar.xz
Implement CGdiPrinterDriver::DrawDeviceText().chromium/2801
This is sufficient to print text with GDI for PDFs generated by Chromium and cannot print any arbitrary PDF. Text that cannot be printed will be drawn as glyphs as before. BUG=409472 Review-Url: https://codereview.chromium.org/2113563003
Diffstat (limited to 'public')
-rw-r--r--public/fpdfview.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/public/fpdfview.h b/public/fpdfview.h
index cea431a498..cbb577b2fd 100644
--- a/public/fpdfview.h
+++ b/public/fpdfview.h
@@ -211,6 +211,34 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary();
DLLEXPORT void STDCALL FPDF_SetSandBoxPolicy(FPDF_DWORD policy,
FPDF_BOOL enable);
+#if defined(_WIN32) && defined(PDFIUM_PRINT_TEXT_WITH_GDI)
+// Pointer to a helper function to make |font| with |text| of |text_length|
+// accessible when printing text with GDI. This is useful in sandboxed
+// environments where PDFium's access to GDI may be restricted.
+typedef void (*PDFiumEnsureTypefaceCharactersAccessible)(const LOGFONT* font,
+ const wchar_t* text,
+ size_t text_length);
+
+// Function: FPDF_SetTypefaceAccessibleFunc
+// Set the function pointer that makes GDI fonts available in sandboxed
+// environments. Experimental API.
+// Parameters:
+// func - A function pointer. See description above.
+// Return value:
+// None.
+DLLEXPORT void STDCALL
+FPDF_SetTypefaceAccessibleFunc(PDFiumEnsureTypefaceCharactersAccessible func);
+
+// Function: FPDF_SetPrintTextWithGDI
+// Set whether to use GDI to draw fonts when printing on Windows.
+// Experimental API.
+// Parameters:
+// use_gdi - Set to true to enable printing text with GDI.
+// Return value:
+// None.
+DLLEXPORT void STDCALL FPDF_SetPrintTextWithGDI(FPDF_BOOL use_gdi);
+#endif
+
// Function: FPDF_LoadDocument
// Open and load a PDF document.
// Parameters: