Expose additional flags for rasterization.

These flags are unused in Chromium, but are needed for the Cloud Print
conversion process, which takes PDF and produces a raster for low-end
printers. Certain low-end printers (e.g., B&W laser printers) will
turn anti-aliased text into a mess. The existing printing flag isn't
sufficient, as other kinds of printers will still want some kinds of
anti-aliasing to occur for best results.

BUG=482253
TEST=none
R=vitalybuka@chromium.org

Review URL: https://codereview.chromium.org/1115513002

Patch from Scott Byer <scottbyer@chromium.org>.
diff --git a/fpdfsdk/include/fpdfview.h b/fpdfsdk/include/fpdfview.h
index f9df408..21cddab 100644
--- a/fpdfsdk/include/fpdfview.h
+++ b/fpdfsdk/include/fpdfview.h
@@ -336,6 +336,9 @@
 #define FPDF_RENDER_LIMITEDIMAGECACHE	0x200	// Limit image cache size. 
 #define FPDF_RENDER_FORCEHALFTONE		0x400	// Always use halftone for image stretching.
 #define FPDF_PRINTING		0x800	// Render for printing.
+#define FPDF_RENDER_NO_SMOOTHTEXT	0x1000  // Set to disable anti-aliasing on text.
+#define FPDF_RENDER_NO_SMOOTHIMAGE	0x2000  // Set to disable anti-aliasing on images.
+#define FPDF_RENDER_NO_SMOOTHPATH	0x4000  // Set to disable anti-aliasing on paths.
 #define FPDF_REVERSE_BYTE_ORDER		0x10		//set whether render in a reverse Byte order, this flag only 
 												//enable when render to a bitmap.
 #ifdef _WIN32
diff --git a/fpdfsdk/src/fpdfview.cpp b/fpdfsdk/src/fpdfview.cpp
index 5df563f..3207ebe 100644
--- a/fpdfsdk/src/fpdfview.cpp
+++ b/fpdfsdk/src/fpdfview.cpp
@@ -689,6 +689,12 @@
 		pContext->m_pOptions->m_Flags |= RENDER_LIMITEDIMAGECACHE;
 	if (flags & FPDF_RENDER_FORCEHALFTONE)
 		pContext->m_pOptions->m_Flags |= RENDER_FORCE_HALFTONE;
+	if (flags & FPDF_RENDER_NO_SMOOTHTEXT)
+		pContext->m_pOptions->m_Flags |= RENDER_NOTEXTSMOOTH;
+	if (flags & FPDF_RENDER_NO_SMOOTHIMAGE)
+		pContext->m_pOptions->m_Flags |= RENDER_NOIMAGESMOOTH;
+	if (flags & FPDF_RENDER_NO_SMOOTHPATH)
+		pContext->m_pOptions->m_Flags |= RENDER_NOPATHSMOOTH;
 	//Grayscale output
 	if (flags & FPDF_GRAYSCALE)
 	{