summaryrefslogtreecommitdiff
path: root/core/fpdfapi/fpdf_page/include
diff options
context:
space:
mode:
authorthestig <thestig@chromium.org>2016-05-20 17:28:24 -0700
committerCommit bot <commit-bot@chromium.org>2016-05-20 17:28:24 -0700
commit8f5f897b50918fe83da894d9e7a34bbe314244de (patch)
treed268a9792cbf9fb66fe60820c65daa716ca39cbf /core/fpdfapi/fpdf_page/include
parenta2c06e4a667a45a267f9382d0d90ab689c89d0cf (diff)
downloadpdfium-8f5f897b50918fe83da894d9e7a34bbe314244de.tar.xz
Add an enum to represent text rendering modes.
Review-Url: https://codereview.chromium.org/1999553002
Diffstat (limited to 'core/fpdfapi/fpdf_page/include')
-rw-r--r--core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h b/core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h
index feed1a043f..4e33d5f170 100644
--- a/core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h
+++ b/core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h
@@ -12,6 +12,22 @@
class CPDF_Font;
class CPDF_Document;
+// See PDF Reference 1.7, page 402, table 5.3.
+enum class TextRenderingMode {
+ MODE_FILL = 0,
+ MODE_STROKE = 1,
+ MODE_FILL_STROKE = 2,
+ MODE_INVISIBLE = 3,
+ MODE_FILL_CLIP = 4,
+ MODE_STROKE_CLIP = 5,
+ MODE_FILL_STROKE_CLIP = 6,
+ MODE_CLIP = 7,
+};
+
+bool SetTextRenderingModeFromInt(int iMode, TextRenderingMode* mode);
+bool TextRenderingModeIsClipMode(const TextRenderingMode& mode);
+bool TextRenderingModeIsStrokeMode(const TextRenderingMode& mode);
+
class CPDF_TextStateData {
public:
CPDF_TextStateData();
@@ -23,8 +39,8 @@ class CPDF_TextStateData {
FX_FLOAT m_FontSize;
FX_FLOAT m_CharSpace;
FX_FLOAT m_WordSpace;
+ TextRenderingMode m_TextMode;
FX_FLOAT m_Matrix[4];
- int m_TextMode;
FX_FLOAT m_CTM[4];
};