From 8f5f897b50918fe83da894d9e7a34bbe314244de Mon Sep 17 00:00:00 2001 From: thestig Date: Fri, 20 May 2016 17:28:24 -0700 Subject: Add an enum to represent text rendering modes. Review-Url: https://codereview.chromium.org/1999553002 --- core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'core/fpdfapi/fpdf_page/include/cpdf_textstatedata.h') 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]; }; -- cgit v1.2.3