summaryrefslogtreecommitdiff
path: root/core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp
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/cpdf_textstatedata.cpp
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/cpdf_textstatedata.cpp')
-rw-r--r--core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp33
1 files changed, 32 insertions, 1 deletions
diff --git a/core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp b/core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp
index 5cd6061542..e60af0076e 100644
--- a/core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp
+++ b/core/fpdfapi/fpdf_page/cpdf_textstatedata.cpp
@@ -10,13 +10,44 @@
#include "core/fpdfapi/fpdf_page/pageint.h"
#include "core/fpdfapi/fpdf_parser/include/cpdf_document.h"
+bool SetTextRenderingModeFromInt(int iMode, TextRenderingMode* mode) {
+ if (iMode < 0 || iMode > 7)
+ return false;
+ *mode = static_cast<TextRenderingMode>(iMode);
+ return true;
+}
+
+bool TextRenderingModeIsClipMode(const TextRenderingMode& mode) {
+ switch (mode) {
+ case TextRenderingMode::MODE_FILL_CLIP:
+ case TextRenderingMode::MODE_STROKE_CLIP:
+ case TextRenderingMode::MODE_FILL_STROKE_CLIP:
+ case TextRenderingMode::MODE_CLIP:
+ return true;
+ default:
+ return false;
+ }
+}
+
+bool TextRenderingModeIsStrokeMode(const TextRenderingMode& mode) {
+ switch (mode) {
+ case TextRenderingMode::MODE_STROKE:
+ case TextRenderingMode::MODE_FILL_STROKE:
+ case TextRenderingMode::MODE_STROKE_CLIP:
+ case TextRenderingMode::MODE_FILL_STROKE_CLIP:
+ return true;
+ default:
+ return false;
+ }
+}
+
CPDF_TextStateData::CPDF_TextStateData()
: m_pFont(nullptr),
m_pDocument(nullptr),
m_FontSize(1.0f),
m_CharSpace(0),
m_WordSpace(0),
- m_TextMode(0) {
+ m_TextMode(TextRenderingMode::MODE_FILL) {
m_Matrix[0] = m_Matrix[3] = 1.0f;
m_Matrix[1] = m_Matrix[2] = 0;
m_CTM[0] = m_CTM[3] = 1.0f;