diff options
Diffstat (limited to 'core/fpdfapi/page')
-rw-r--r-- | core/fpdfapi/page/cpdf_contentparser.cpp | 2 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_form.cpp | 2 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_page.cpp | 3 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_pageobjectholder.cpp | 4 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_pageobjectholder.h | 8 |
5 files changed, 9 insertions, 10 deletions
diff --git a/core/fpdfapi/page/cpdf_contentparser.cpp b/core/fpdfapi/page/cpdf_contentparser.cpp index f558ac823a..26fd0189f8 100644 --- a/core/fpdfapi/page/cpdf_contentparser.cpp +++ b/core/fpdfapi/page/cpdf_contentparser.cpp @@ -93,7 +93,7 @@ CPDF_ContentParser::CPDF_ContentParser(CPDF_Form* pForm, m_pParser->GetCurStates()->m_ClipPath.AppendPath(ClipPath, FXFILL_WINDING, true); } - if (pForm->GetTransparency() & PDFTRANS_GROUP) { + if (pForm->GetTransparency().IsGroup()) { CPDF_GeneralState* pState = &m_pParser->GetCurStates()->m_GeneralState; pState->SetBlendType(FXDIB_BLEND_NORMAL); pState->SetStrokeAlpha(1.0f); diff --git a/core/fpdfapi/page/cpdf_form.cpp b/core/fpdfapi/page/cpdf_form.cpp index bb06cbfe6f..3abeff4829 100644 --- a/core/fpdfapi/page/cpdf_form.cpp +++ b/core/fpdfapi/page/cpdf_form.cpp @@ -25,7 +25,7 @@ CPDF_Form::CPDF_Form(CPDF_Document* pDoc, m_pResources = pParentResources; if (!m_pResources) m_pResources = pPageResources; - m_iTransparency = 0; + m_Transparency = CPDF_Transparency(); LoadTransInfo(); } diff --git a/core/fpdfapi/page/cpdf_page.cpp b/core/fpdfapi/page/cpdf_page.cpp index eee6673650..7c0a3234c9 100644 --- a/core/fpdfapi/page/cpdf_page.cpp +++ b/core/fpdfapi/page/cpdf_page.cpp @@ -67,7 +67,8 @@ CPDF_Page::CPDF_Page(CPDF_Document* pDocument, break; } - m_iTransparency = PDFTRANS_ISOLATED; + m_Transparency = CPDF_Transparency(); + m_Transparency.SetIsolated(); LoadTransInfo(); } diff --git a/core/fpdfapi/page/cpdf_pageobjectholder.cpp b/core/fpdfapi/page/cpdf_pageobjectholder.cpp index d8858279ca..1d39802658 100644 --- a/core/fpdfapi/page/cpdf_pageobjectholder.cpp +++ b/core/fpdfapi/page/cpdf_pageobjectholder.cpp @@ -81,9 +81,9 @@ void CPDF_PageObjectHolder::LoadTransInfo() { pdfium::transparency::kTransparency) { return; } - m_iTransparency |= PDFTRANS_GROUP; + m_Transparency.SetGroup(); if (pGroup->GetIntegerFor(pdfium::transparency::kI)) - m_iTransparency |= PDFTRANS_ISOLATED; + m_Transparency.SetIsolated(); } size_t CPDF_PageObjectHolder::GetPageObjectCount() const { diff --git a/core/fpdfapi/page/cpdf_pageobjectholder.h b/core/fpdfapi/page/cpdf_pageobjectholder.h index dc1a607cf0..61004444c0 100644 --- a/core/fpdfapi/page/cpdf_pageobjectholder.h +++ b/core/fpdfapi/page/cpdf_pageobjectholder.h @@ -12,6 +12,7 @@ #include <vector> #include "core/fpdfapi/page/cpdf_pageobjectlist.h" +#include "core/fpdfapi/render/cpdf_transparency.h" #include "core/fxcrt/fx_coordinates.h" #include "core/fxcrt/fx_string.h" #include "core/fxcrt/fx_system.h" @@ -23,9 +24,6 @@ class CPDF_Document; class CPDF_Stream; class PauseIndicatorIface; -#define PDFTRANS_GROUP 0x0100 -#define PDFTRANS_ISOLATED 0x0200 - // These structs are used to keep track of resources that have already been // generated in the page object holder. struct GraphicsData { @@ -72,7 +70,7 @@ class CPDF_PageObjectHolder { const CFX_Matrix& GetLastCTM() const { return m_LastCTM; } const CFX_FloatRect& GetBBox() const { return m_BBox; } - int GetTransparency() const { return m_iTransparency; } + const CPDF_Transparency& GetTransparency() const { return m_Transparency; } bool BackgroundAlphaNeeded() const { return m_bBackgroundAlphaNeeded; } void SetBackgroundAlphaNeeded(bool needed) { m_bBackgroundAlphaNeeded = needed; @@ -101,7 +99,7 @@ class CPDF_PageObjectHolder { const UnownedPtr<CPDF_Dictionary> m_pFormDict; UnownedPtr<CPDF_Document> m_pDocument; CFX_FloatRect m_BBox; - int m_iTransparency = 0; + CPDF_Transparency m_Transparency; bool m_bBackgroundAlphaNeeded = false; std::vector<CFX_FloatRect> m_MaskBoundingBoxes; ParseState m_ParseState = CONTENT_NOT_PARSED; |