Remove |CPDF_RenderOptions::bOverprint|.
There is no way to set this option using public APIs, so the only
reference to it in CPDF_RenderStatus::ProcessTransparency() is
effectively dead code.
Change-Id: If1a10ecec1b77e535af33e207597a82b2d5897f5
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/70310
Reviewed-by: Daniel Hosseinian <dhoss@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfapi/render/cpdf_renderoptions.h b/core/fpdfapi/render/cpdf_renderoptions.h
index 8c6c4af..fd17a82 100644
--- a/core/fpdfapi/render/cpdf_renderoptions.h
+++ b/core/fpdfapi/render/cpdf_renderoptions.h
@@ -30,7 +30,6 @@
bool bForceHalftone = false;
bool bRectAA = false;
bool bFillFullcover = false;
- bool bOverprint = false;
bool bThinLine = false;
bool bBreakForMasks = false;
bool bNoTextSmooth = false;
diff --git a/core/fpdfapi/render/cpdf_renderstatus.cpp b/core/fpdfapi/render/cpdf_renderstatus.cpp
index c025b83..6461598 100644
--- a/core/fpdfapi/render/cpdf_renderstatus.cpp
+++ b/core/fpdfapi/render/cpdf_renderstatus.cpp
@@ -615,7 +615,7 @@
#if defined _SKIA_SUPPORT_
DebugVerifyDeviceIsPreMultiplied();
#endif
- BlendMode blend_type = pPageObj->m_GeneralState.GetBlendType();
+ const BlendMode blend_type = pPageObj->m_GeneralState.GetBlendType();
CPDF_Dictionary* pSMaskDict =
ToDictionary(pPageObj->m_GeneralState.GetSoftMask());
if (pSMaskDict) {
@@ -639,33 +639,6 @@
(pPageObj->m_ClipPath.HasRef() &&
pPageObj->m_ClipPath.GetTextCount() > 0 && !m_bPrint &&
!(m_pDevice->GetDeviceCaps(FXDC_RENDER_CAPS) & FXRC_SOFT_CLIP));
- if (m_Options.GetOptions().bOverprint && pPageObj->IsImage() &&
- pPageObj->m_GeneralState.GetFillOP() &&
- pPageObj->m_GeneralState.GetStrokeOP()) {
- CPDF_Document* pDocument = nullptr;
- CPDF_Page* pPage = nullptr;
- if (m_pContext->GetPageCache()) {
- pPage = m_pContext->GetPageCache()->GetPage();
- pDocument = pPage->GetDocument();
- } else {
- pDocument = pPageObj->AsImage()->GetImage()->GetDocument();
- }
- const CPDF_Dictionary* pPageResources =
- pPage ? pPage->m_pPageResources.Get() : nullptr;
- auto* pImageStream = pPageObj->AsImage()->GetImage()->GetStream();
- const CPDF_Object* pCSObj =
- pImageStream->GetDict()->GetDirectObjectFor("ColorSpace");
- RetainPtr<CPDF_ColorSpace> pColorSpace =
- CPDF_DocPageData::FromDocument(pDocument)->GetColorSpace(
- pCSObj, pPageResources);
- if (pColorSpace) {
- int format = pColorSpace->GetFamily();
- if (format == PDFCS_DEVICECMYK || format == PDFCS_SEPARATION ||
- format == PDFCS_DEVICEN) {
- blend_type = BlendMode::kDarken;
- }
- }
- }
if (!pSMaskDict && group_alpha == 1.0f && blend_type == BlendMode::kNormal &&
!bTextClip && !bGroupTransparent) {
return false;