summaryrefslogtreecommitdiff
path: root/core/fpdfapi
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi')
-rw-r--r--core/fpdfapi/font/cpdf_type3char.cpp10
-rw-r--r--core/fpdfapi/page/cpdf_generalstate.cpp2
-rw-r--r--core/fpdfapi/page/cpdf_image.cpp52
-rw-r--r--core/fpdfapi/page/cpdf_image.h22
-rw-r--r--core/fpdfapi/parser/cpdf_document.cpp2
-rw-r--r--core/fpdfapi/render/cpdf_dibbase.cpp (renamed from core/fpdfapi/render/cpdf_dibsource.cpp)137
-rw-r--r--core/fpdfapi/render/cpdf_dibbase.h (renamed from core/fpdfapi/render/cpdf_dibsource.h)38
-rw-r--r--core/fpdfapi/render/cpdf_docrenderdata.cpp2
-rw-r--r--core/fpdfapi/render/cpdf_imagecacheentry.cpp38
-rw-r--r--core/fpdfapi/render/cpdf_imagecacheentry.h16
-rw-r--r--core/fpdfapi/render/cpdf_imageloader.cpp4
-rw-r--r--core/fpdfapi/render/cpdf_imageloader.h4
-rw-r--r--core/fpdfapi/render/cpdf_imagerenderer.cpp86
-rw-r--r--core/fpdfapi/render/cpdf_imagerenderer.h14
-rw-r--r--core/fpdfapi/render/cpdf_pagerendercache.cpp6
-rw-r--r--core/fpdfapi/render/cpdf_renderstatus.cpp4
-rw-r--r--core/fpdfapi/render/cpdf_transferfunc.cpp6
-rw-r--r--core/fpdfapi/render/cpdf_transferfunc.h4
18 files changed, 223 insertions, 224 deletions
diff --git a/core/fpdfapi/font/cpdf_type3char.cpp b/core/fpdfapi/font/cpdf_type3char.cpp
index 8a89582b00..a04e83c468 100644
--- a/core/fpdfapi/font/cpdf_type3char.cpp
+++ b/core/fpdfapi/font/cpdf_type3char.cpp
@@ -49,15 +49,15 @@ bool CPDF_Type3Char::LoadBitmap(CPDF_RenderContext* pContext) {
m_ImageMatrix = pPageObj->AsImage()->matrix();
{
- // |pSource| actually gets assigned a CPDF_DIBSource, which has pointers
+ // |pSource| actually gets assigned a CPDF_DIBBase, which has pointers
// into objects owned by |m_pForm|. Make sure it is out of scope before
// clearing the form.
- RetainPtr<CFX_DIBSource> pSource =
- pPageObj->AsImage()->GetImage()->LoadDIBSource();
+ RetainPtr<CFX_DIBBase> pSource =
+ pPageObj->AsImage()->GetImage()->LoadDIBBase();
- // Clone() is non-virtual, and can't be overloaded by CPDF_DIBSource to
+ // Clone() is non-virtual, and can't be overloaded by CPDF_DIBBase to
// return a clone of the subclass as one would typically expect from a
- // such a method. Instead, it only clones the CFX_DIBSource, none of whose
+ // such a method. Instead, it only clones the CFX_DIBBase, none of whose
// members point to objects owned by the form. As a result, |m_pBitmap|
// may outlive |m_pForm|.
if (pSource)
diff --git a/core/fpdfapi/page/cpdf_generalstate.cpp b/core/fpdfapi/page/cpdf_generalstate.cpp
index 2657578ab7..ea912736fe 100644
--- a/core/fpdfapi/page/cpdf_generalstate.cpp
+++ b/core/fpdfapi/page/cpdf_generalstate.cpp
@@ -8,7 +8,7 @@
#include "constants/transparency.h"
#include "core/fpdfapi/parser/cpdf_document.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_docrenderdata.h"
#include "core/fpdfapi/render/cpdf_transferfunc.h"
diff --git a/core/fpdfapi/page/cpdf_image.cpp b/core/fpdfapi/page/cpdf_image.cpp
index a1be407dfe..b1c2fc9e82 100644
--- a/core/fpdfapi/page/cpdf_image.cpp
+++ b/core/fpdfapi/page/cpdf_image.cpp
@@ -23,7 +23,7 @@
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_stream.h"
#include "core/fpdfapi/parser/cpdf_string.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fxcodec/codec/ccodec_jpegmodule.h"
#include "core/fxcrt/fx_stream.h"
@@ -329,43 +329,43 @@ void CPDF_Image::ResetCache(CPDF_Page* pPage,
pPage->GetRenderCache()->ResetBitmap(pHolder, pBitmap);
}
-RetainPtr<CFX_DIBSource> CPDF_Image::LoadDIBSource() const {
- auto source = pdfium::MakeRetain<CPDF_DIBSource>();
+RetainPtr<CFX_DIBBase> CPDF_Image::LoadDIBBase() const {
+ auto source = pdfium::MakeRetain<CPDF_DIBBase>();
if (!source->Load(m_pDocument.Get(), m_pStream.Get()))
return nullptr;
if (!source->IsJBigImage())
return source;
- CPDF_DIBSource::LoadState ret = CPDF_DIBSource::LoadState::kContinue;
- while (ret == CPDF_DIBSource::LoadState::kContinue)
- ret = source->ContinueLoadDIBSource(nullptr);
- return ret == CPDF_DIBSource::LoadState::kSuccess ? source : nullptr;
+ CPDF_DIBBase::LoadState ret = CPDF_DIBBase::LoadState::kContinue;
+ while (ret == CPDF_DIBBase::LoadState::kContinue)
+ ret = source->ContinueLoadDIBBase(nullptr);
+ return ret == CPDF_DIBBase::LoadState::kSuccess ? source : nullptr;
}
-RetainPtr<CFX_DIBSource> CPDF_Image::DetachBitmap() {
- return std::move(m_pDIBSource);
+RetainPtr<CFX_DIBBase> CPDF_Image::DetachBitmap() {
+ return std::move(m_pDIBBase);
}
-RetainPtr<CFX_DIBSource> CPDF_Image::DetachMask() {
+RetainPtr<CFX_DIBBase> CPDF_Image::DetachMask() {
return std::move(m_pMask);
}
-bool CPDF_Image::StartLoadDIBSource(const CPDF_Dictionary* pFormResource,
- CPDF_Dictionary* pPageResource,
- bool bStdCS,
- uint32_t GroupFamily,
- bool bLoadMask) {
- auto source = pdfium::MakeRetain<CPDF_DIBSource>();
- CPDF_DIBSource::LoadState ret = source->StartLoadDIBSource(
+bool CPDF_Image::StartLoadDIBBase(const CPDF_Dictionary* pFormResource,
+ CPDF_Dictionary* pPageResource,
+ bool bStdCS,
+ uint32_t GroupFamily,
+ bool bLoadMask) {
+ auto source = pdfium::MakeRetain<CPDF_DIBBase>();
+ CPDF_DIBBase::LoadState ret = source->StartLoadDIBBase(
m_pDocument.Get(), m_pStream.Get(), true, pFormResource, pPageResource,
bStdCS, GroupFamily, bLoadMask);
- if (ret == CPDF_DIBSource::LoadState::kFail) {
- m_pDIBSource.Reset();
+ if (ret == CPDF_DIBBase::LoadState::kFail) {
+ m_pDIBBase.Reset();
return false;
}
- m_pDIBSource = source;
- if (ret == CPDF_DIBSource::LoadState::kContinue)
+ m_pDIBBase = source;
+ if (ret == CPDF_DIBBase::LoadState::kContinue)
return true;
m_pMask = source->DetachMask();
@@ -374,16 +374,16 @@ bool CPDF_Image::StartLoadDIBSource(const CPDF_Dictionary* pFormResource,
}
bool CPDF_Image::Continue(PauseIndicatorIface* pPause) {
- RetainPtr<CPDF_DIBSource> pSource = m_pDIBSource.As<CPDF_DIBSource>();
- CPDF_DIBSource::LoadState ret = pSource->ContinueLoadDIBSource(pPause);
- if (ret == CPDF_DIBSource::LoadState::kContinue)
+ RetainPtr<CPDF_DIBBase> pSource = m_pDIBBase.As<CPDF_DIBBase>();
+ CPDF_DIBBase::LoadState ret = pSource->ContinueLoadDIBBase(pPause);
+ if (ret == CPDF_DIBBase::LoadState::kContinue)
return true;
- if (ret == CPDF_DIBSource::LoadState::kSuccess) {
+ if (ret == CPDF_DIBBase::LoadState::kSuccess) {
m_pMask = pSource->DetachMask();
m_MatteColor = pSource->GetMatteColor();
} else {
- m_pDIBSource.Reset();
+ m_pDIBBase.Reset();
}
return false;
}
diff --git a/core/fpdfapi/page/cpdf_image.h b/core/fpdfapi/page/cpdf_image.h
index e6c6d18986..4306109199 100644
--- a/core/fpdfapi/page/cpdf_image.h
+++ b/core/fpdfapi/page/cpdf_image.h
@@ -15,7 +15,7 @@
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
-class CFX_DIBSource;
+class CFX_DIBBase;
class CFX_DIBitmap;
class CPDF_Document;
class CPDF_Page;
@@ -41,7 +41,7 @@ class CPDF_Image : public Retainable {
bool IsMask() const { return m_bIsMask; }
bool IsInterpol() const { return m_bInterpolate; }
- RetainPtr<CFX_DIBSource> LoadDIBSource() const;
+ RetainPtr<CFX_DIBBase> LoadDIBBase() const;
void SetImage(const RetainPtr<CFX_DIBitmap>& pDIBitmap);
void SetJpegImage(const RetainPtr<IFX_SeekableReadStream>& pFile);
@@ -50,20 +50,20 @@ class CPDF_Image : public Retainable {
void ResetCache(CPDF_Page* pPage, const RetainPtr<CFX_DIBitmap>& pDIBitmap);
// Returns whether to Continue() or not.
- bool StartLoadDIBSource(const CPDF_Dictionary* pFormResource,
- CPDF_Dictionary* pPageResource,
- bool bStdCS,
- uint32_t GroupFamily,
- bool bLoadMask);
+ bool StartLoadDIBBase(const CPDF_Dictionary* pFormResource,
+ CPDF_Dictionary* pPageResource,
+ bool bStdCS,
+ uint32_t GroupFamily,
+ bool bLoadMask);
// Returns whether to Continue() or not.
bool Continue(PauseIndicatorIface* pPause);
- RetainPtr<CFX_DIBSource> DetachBitmap();
- RetainPtr<CFX_DIBSource> DetachMask();
+ RetainPtr<CFX_DIBBase> DetachBitmap();
+ RetainPtr<CFX_DIBBase> DetachMask();
- RetainPtr<CFX_DIBSource> m_pDIBSource;
- RetainPtr<CFX_DIBSource> m_pMask;
+ RetainPtr<CFX_DIBBase> m_pDIBBase;
+ RetainPtr<CFX_DIBBase> m_pMask;
uint32_t m_MatteColor = 0;
private:
diff --git a/core/fpdfapi/parser/cpdf_document.cpp b/core/fpdfapi/parser/cpdf_document.cpp
index 63556de250..7119e7649a 100644
--- a/core/fpdfapi/parser/cpdf_document.cpp
+++ b/core/fpdfapi/parser/cpdf_document.cpp
@@ -26,7 +26,7 @@
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_stream.h"
#include "core/fpdfapi/parser/cpdf_string.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_docrenderdata.h"
#include "core/fxcodec/JBig2_DocumentContext.h"
#include "core/fxcrt/fx_codepage.h"
diff --git a/core/fpdfapi/render/cpdf_dibsource.cpp b/core/fpdfapi/render/cpdf_dibbase.cpp
index 0c69852354..9aa1ab40a6 100644
--- a/core/fpdfapi/render/cpdf_dibsource.cpp
+++ b/core/fpdfapi/render/cpdf_dibbase.cpp
@@ -4,7 +4,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include <algorithm>
#include <memory>
@@ -101,9 +101,9 @@ class JpxBitMapContext {
} // namespace
-CPDF_DIBSource::CPDF_DIBSource() {}
+CPDF_DIBBase::CPDF_DIBBase() {}
-CPDF_DIBSource::~CPDF_DIBSource() {
+CPDF_DIBBase::~CPDF_DIBBase() {
if (m_pColorSpace && m_pDocument) {
auto* pPageData = m_pDocument->GetPageData();
if (pPageData) {
@@ -113,7 +113,7 @@ CPDF_DIBSource::~CPDF_DIBSource() {
}
}
-bool CPDF_DIBSource::Load(CPDF_Document* pDoc, const CPDF_Stream* pStream) {
+bool CPDF_DIBBase::Load(CPDF_Document* pDoc, const CPDF_Stream* pStream) {
if (!pStream)
return false;
@@ -181,7 +181,7 @@ bool CPDF_DIBSource::Load(CPDF_Document* pDoc, const CPDF_Stream* pStream) {
return true;
}
-bool CPDF_DIBSource::ContinueToLoadMask() {
+bool CPDF_DIBBase::ContinueToLoadMask() {
if (m_bImageMask) {
m_bpp = 1;
m_bpc = 1;
@@ -218,7 +218,7 @@ bool CPDF_DIBSource::ContinueToLoadMask() {
return true;
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadDIBSource(
+CPDF_DIBBase::LoadState CPDF_DIBBase::StartLoadDIBBase(
CPDF_Document* pDoc,
const CPDF_Stream* pStream,
bool bHasMask,
@@ -280,7 +280,7 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadDIBSource(
return LoadState::kSuccess;
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::ContinueLoadDIBSource(
+CPDF_DIBBase::LoadState CPDF_DIBBase::ContinueLoadDIBBase(
PauseIndicatorIface* pPause) {
if (m_Status == LoadState::kContinue)
return ContinueLoadMaskDIB(pPause);
@@ -335,8 +335,8 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::ContinueLoadDIBSource(
return iContinueStatus;
}
-bool CPDF_DIBSource::LoadColorInfo(const CPDF_Dictionary* pFormResources,
- const CPDF_Dictionary* pPageResources) {
+bool CPDF_DIBBase::LoadColorInfo(const CPDF_Dictionary* pFormResources,
+ const CPDF_Dictionary* pPageResources) {
m_bpc_orig = m_pDict->GetIntegerFor("BitsPerComponent");
if (m_pDict->GetIntegerFor("ImageMask"))
m_bImageMask = true;
@@ -392,8 +392,8 @@ bool CPDF_DIBSource::LoadColorInfo(const CPDF_Dictionary* pFormResources,
return GetDecodeAndMaskArray(&m_bDefaultDecode, &m_bColorKey);
}
-bool CPDF_DIBSource::GetDecodeAndMaskArray(bool* bDefaultDecode,
- bool* bColorKey) {
+bool CPDF_DIBBase::GetDecodeAndMaskArray(bool* bDefaultDecode,
+ bool* bColorKey) {
if (!m_pColorSpace)
return false;
@@ -446,7 +446,7 @@ bool CPDF_DIBSource::GetDecodeAndMaskArray(bool* bDefaultDecode,
return true;
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::CreateDecoder() {
+CPDF_DIBBase::LoadState CPDF_DIBBase::CreateDecoder() {
ByteString decoder = m_pStreamAcc->GetImageDecoder();
if (decoder.IsEmpty())
return LoadState::kSuccess;
@@ -503,9 +503,9 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::CreateDecoder() {
return LoadState::kSuccess;
}
-bool CPDF_DIBSource::CreateDCTDecoder(const uint8_t* src_data,
- uint32_t src_size,
- const CPDF_Dictionary* pParams) {
+bool CPDF_DIBBase::CreateDCTDecoder(const uint8_t* src_data,
+ uint32_t src_size,
+ const CPDF_Dictionary* pParams) {
CCodec_JpegModule* pJpegModule = CPDF_ModuleMgr::Get()->GetJpegModule();
m_pDecoder = pJpegModule->CreateDecoder(
src_data, src_size, m_Width, m_Height, m_nComponents,
@@ -574,7 +574,7 @@ bool CPDF_DIBSource::CreateDCTDecoder(const uint8_t* src_data,
return true;
}
-RetainPtr<CFX_DIBitmap> CPDF_DIBSource::LoadJpxBitmap() {
+RetainPtr<CFX_DIBitmap> CPDF_DIBBase::LoadJpxBitmap() {
CCodec_JpxModule* pJpxModule = CPDF_ModuleMgr::Get()->GetJpxModule();
auto context = pdfium::MakeUnique<JpxBitMapContext>(pJpxModule);
context->set_decoder(pJpxModule->CreateDecoder(
@@ -651,7 +651,7 @@ RetainPtr<CFX_DIBitmap> CPDF_DIBSource::LoadJpxBitmap() {
return pCachedBitmap;
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadMask() {
+CPDF_DIBBase::LoadState CPDF_DIBBase::StartLoadMask() {
m_MatteColor = 0XFFFFFFFF;
m_pMaskStream = m_pDict->GetStreamFor("SMask");
if (!m_pMaskStream) {
@@ -676,12 +676,12 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadMask() {
return StartLoadMaskDIB();
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::ContinueLoadMaskDIB(
+CPDF_DIBBase::LoadState CPDF_DIBBase::ContinueLoadMaskDIB(
PauseIndicatorIface* pPause) {
if (!m_pMask)
return LoadState::kSuccess;
- LoadState ret = m_pMask->ContinueLoadDIBSource(pPause);
+ LoadState ret = m_pMask->ContinueLoadDIBBase(pPause);
if (ret == LoadState::kContinue)
return LoadState::kContinue;
@@ -695,19 +695,19 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::ContinueLoadMaskDIB(
return LoadState::kSuccess;
}
-RetainPtr<CPDF_DIBSource> CPDF_DIBSource::DetachMask() {
+RetainPtr<CPDF_DIBBase> CPDF_DIBBase::DetachMask() {
return std::move(m_pMask);
}
-bool CPDF_DIBSource::IsJBigImage() const {
+bool CPDF_DIBBase::IsJBigImage() const {
return m_pStreamAcc->GetImageDecoder() == "JBIG2Decode";
}
-CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadMaskDIB() {
- m_pMask = pdfium::MakeRetain<CPDF_DIBSource>();
+CPDF_DIBBase::LoadState CPDF_DIBBase::StartLoadMaskDIB() {
+ m_pMask = pdfium::MakeRetain<CPDF_DIBBase>();
LoadState ret =
- m_pMask->StartLoadDIBSource(m_pDocument.Get(), m_pMaskStream.Get(), false,
- nullptr, nullptr, true, 0, false);
+ m_pMask->StartLoadDIBBase(m_pDocument.Get(), m_pMaskStream.Get(), false,
+ nullptr, nullptr, true, 0, false);
if (ret == LoadState::kContinue) {
if (m_Status == LoadState::kFail)
m_Status = LoadState::kContinue;
@@ -718,7 +718,7 @@ CPDF_DIBSource::LoadState CPDF_DIBSource::StartLoadMaskDIB() {
return LoadState::kSuccess;
}
-void CPDF_DIBSource::LoadPalette() {
+void CPDF_DIBBase::LoadPalette() {
if (!m_pColorSpace || m_Family == PDFCS_PATTERN)
return;
@@ -791,7 +791,7 @@ void CPDF_DIBSource::LoadPalette() {
}
}
-void CPDF_DIBSource::ValidateDictParam() {
+void CPDF_DIBBase::ValidateDictParam() {
m_bpc = m_bpc_orig;
const CPDF_Object* pFilter = m_pDict->GetDirectObjectFor("Filter");
if (pFilter) {
@@ -824,8 +824,8 @@ void CPDF_DIBSource::ValidateDictParam() {
m_bpc = 0;
}
-void CPDF_DIBSource::TranslateScanline24bpp(uint8_t* dest_scan,
- const uint8_t* src_scan) const {
+void CPDF_DIBBase::TranslateScanline24bpp(uint8_t* dest_scan,
+ const uint8_t* src_scan) const {
if (m_bpc == 0)
return;
@@ -873,7 +873,7 @@ void CPDF_DIBSource::TranslateScanline24bpp(uint8_t* dest_scan,
}
}
-bool CPDF_DIBSource::TranslateScanline24bppDefaultDecode(
+bool CPDF_DIBBase::TranslateScanline24bppDefaultDecode(
uint8_t* dest_scan,
const uint8_t* src_scan) const {
if (!m_bDefaultDecode)
@@ -935,11 +935,11 @@ bool CPDF_DIBSource::TranslateScanline24bppDefaultDecode(
return true;
}
-uint8_t* CPDF_DIBSource::GetBuffer() const {
+uint8_t* CPDF_DIBBase::GetBuffer() const {
return m_pCachedBitmap ? m_pCachedBitmap->GetBuffer() : nullptr;
}
-const uint8_t* CPDF_DIBSource::GetScanline(int line) const {
+const uint8_t* CPDF_DIBBase::GetScanline(int line) const {
if (m_bpc == 0)
return nullptr;
@@ -1058,18 +1058,17 @@ const uint8_t* CPDF_DIBSource::GetScanline(int line) const {
return m_pMaskedLine.get();
}
-bool CPDF_DIBSource::SkipToScanline(int line,
- PauseIndicatorIface* pPause) const {
+bool CPDF_DIBBase::SkipToScanline(int line, PauseIndicatorIface* pPause) const {
return m_pDecoder && m_pDecoder->SkipToScanline(line, pPause);
}
-void CPDF_DIBSource::DownSampleScanline(int line,
- uint8_t* dest_scan,
- int dest_bpp,
- int dest_width,
- bool bFlipX,
- int clip_left,
- int clip_width) const {
+void CPDF_DIBBase::DownSampleScanline(int line,
+ uint8_t* dest_scan,
+ int dest_bpp,
+ int dest_width,
+ bool bFlipX,
+ int clip_left,
+ int clip_width) const {
if (line < 0 || !dest_scan || dest_bpp <= 0 || dest_width <= 0 ||
clip_left < 0 || clip_width <= 0) {
return;
@@ -1122,15 +1121,15 @@ void CPDF_DIBSource::DownSampleScanline(int line,
}
}
-void CPDF_DIBSource::DownSampleScanline1Bit(int orig_Bpp,
- int dest_Bpp,
- uint32_t src_width,
- const uint8_t* pSrcLine,
- uint8_t* dest_scan,
- int dest_width,
- bool bFlipX,
- int clip_left,
- int clip_width) const {
+void CPDF_DIBBase::DownSampleScanline1Bit(int orig_Bpp,
+ int dest_Bpp,
+ uint32_t src_width,
+ const uint8_t* pSrcLine,
+ uint8_t* dest_scan,
+ int dest_width,
+ bool bFlipX,
+ int clip_left,
+ int clip_width) const {
if (m_bColorKey && !m_bImageMask) {
uint32_t reset_argb = m_pPalette ? m_pPalette.get()[0] : 0xFF000000;
uint32_t set_argb = m_pPalette ? m_pPalette.get()[1] : 0xFFFFFFFF;
@@ -1181,15 +1180,15 @@ void CPDF_DIBSource::DownSampleScanline1Bit(int orig_Bpp,
}
}
-void CPDF_DIBSource::DownSampleScanline8Bit(int orig_Bpp,
- int dest_Bpp,
- uint32_t src_width,
- const uint8_t* pSrcLine,
- uint8_t* dest_scan,
- int dest_width,
- bool bFlipX,
- int clip_left,
- int clip_width) const {
+void CPDF_DIBBase::DownSampleScanline8Bit(int orig_Bpp,
+ int dest_Bpp,
+ uint32_t src_width,
+ const uint8_t* pSrcLine,
+ uint8_t* dest_scan,
+ int dest_width,
+ bool bFlipX,
+ int clip_left,
+ int clip_width) const {
if (m_bpc < 8) {
uint64_t src_bit_pos = 0;
for (uint32_t col = 0; col < src_width; col++) {
@@ -1246,15 +1245,15 @@ void CPDF_DIBSource::DownSampleScanline8Bit(int orig_Bpp,
}
}
-void CPDF_DIBSource::DownSampleScanline32Bit(int orig_Bpp,
- int dest_Bpp,
- uint32_t src_width,
- const uint8_t* pSrcLine,
- uint8_t* dest_scan,
- int dest_width,
- bool bFlipX,
- int clip_left,
- int clip_width) const {
+void CPDF_DIBBase::DownSampleScanline32Bit(int orig_Bpp,
+ int dest_Bpp,
+ uint32_t src_width,
+ const uint8_t* pSrcLine,
+ uint8_t* dest_scan,
+ int dest_width,
+ bool bFlipX,
+ int clip_left,
+ int clip_width) const {
// last_src_x used to store the last seen src_x position which should be
// in [0, src_width). Set the initial value to be an invalid src_x value.
uint32_t last_src_x = src_width;
@@ -1344,7 +1343,7 @@ void CPDF_DIBSource::DownSampleScanline32Bit(int orig_Bpp,
}
}
-bool CPDF_DIBSource::TransMask() const {
+bool CPDF_DIBBase::TransMask() const {
return m_bLoadMask && m_GroupFamily == PDFCS_DEVICECMYK &&
m_Family == PDFCS_DEVICECMYK;
}
diff --git a/core/fpdfapi/render/cpdf_dibsource.h b/core/fpdfapi/render/cpdf_dibbase.h
index 597390cd18..a1008470b6 100644
--- a/core/fpdfapi/render/cpdf_dibsource.h
+++ b/core/fpdfapi/render/cpdf_dibbase.h
@@ -4,8 +4,8 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-#ifndef CORE_FPDFAPI_RENDER_CPDF_DIBSOURCE_H_
-#define CORE_FPDFAPI_RENDER_CPDF_DIBSOURCE_H_
+#ifndef CORE_FPDFAPI_RENDER_CPDF_DIBBASE_H_
+#define CORE_FPDFAPI_RENDER_CPDF_DIBBASE_H_
#include <map>
#include <memory>
@@ -21,7 +21,7 @@
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
-#include "core/fxge/dib/cfx_dibsource.h"
+#include "core/fxge/dib/cfx_dibbase.h"
class CCodec_Jbig2Context;
class CCodec_ScanlineDecoder;
@@ -39,7 +39,7 @@ struct DIB_COMP_DATA {
#define FPDF_HUGE_IMAGE_SIZE 60000000
-class CPDF_DIBSource : public CFX_DIBSource {
+class CPDF_DIBBase : public CFX_DIBBase {
public:
enum class LoadState : uint8_t { kFail, kSuccess, kContinue };
@@ -48,7 +48,7 @@ class CPDF_DIBSource : public CFX_DIBSource {
bool Load(CPDF_Document* pDoc, const CPDF_Stream* pStream);
- // CFX_DIBSource
+ // CFX_DIBBase
bool SkipToScanline(int line, PauseIndicatorIface* pPause) const override;
uint8_t* GetBuffer() const override;
const uint8_t* GetScanline(int line) const override;
@@ -63,22 +63,22 @@ class CPDF_DIBSource : public CFX_DIBSource {
const CPDF_ColorSpace* GetColorSpace() const { return m_pColorSpace.Get(); }
uint32_t GetMatteColor() const { return m_MatteColor; }
- LoadState StartLoadDIBSource(CPDF_Document* pDoc,
- const CPDF_Stream* pStream,
- bool bHasMask,
- const CPDF_Dictionary* pFormResources,
- CPDF_Dictionary* pPageResources,
- bool bStdCS,
- uint32_t GroupFamily,
- bool bLoadMask);
- LoadState ContinueLoadDIBSource(PauseIndicatorIface* pPause);
- RetainPtr<CPDF_DIBSource> DetachMask();
+ LoadState StartLoadDIBBase(CPDF_Document* pDoc,
+ const CPDF_Stream* pStream,
+ bool bHasMask,
+ const CPDF_Dictionary* pFormResources,
+ CPDF_Dictionary* pPageResources,
+ bool bStdCS,
+ uint32_t GroupFamily,
+ bool bLoadMask);
+ LoadState ContinueLoadDIBBase(PauseIndicatorIface* pPause);
+ RetainPtr<CPDF_DIBBase> DetachMask();
bool IsJBigImage() const;
private:
- CPDF_DIBSource();
- ~CPDF_DIBSource() override;
+ CPDF_DIBBase();
+ ~CPDF_DIBBase() override;
LoadState StartLoadMask();
LoadState StartLoadMaskDIB();
@@ -149,7 +149,7 @@ class CPDF_DIBSource : public CFX_DIBSource {
std::unique_ptr<uint8_t, FxFreeDeleter> m_pLineBuf;
std::unique_ptr<uint8_t, FxFreeDeleter> m_pMaskedLine;
RetainPtr<CFX_DIBitmap> m_pCachedBitmap;
- RetainPtr<CPDF_DIBSource> m_pMask;
+ RetainPtr<CPDF_DIBBase> m_pMask;
RetainPtr<CPDF_StreamAcc> m_pGlobalStream;
std::unique_ptr<CCodec_ScanlineDecoder> m_pDecoder;
@@ -160,4 +160,4 @@ class CPDF_DIBSource : public CFX_DIBSource {
LoadState m_Status = LoadState::kFail;
};
-#endif // CORE_FPDFAPI_RENDER_CPDF_DIBSOURCE_H_
+#endif // CORE_FPDFAPI_RENDER_CPDF_DIBBASE_H_
diff --git a/core/fpdfapi/render/cpdf_docrenderdata.cpp b/core/fpdfapi/render/cpdf_docrenderdata.cpp
index 568bf76e97..c86eb9b147 100644
--- a/core/fpdfapi/render/cpdf_docrenderdata.cpp
+++ b/core/fpdfapi/render/cpdf_docrenderdata.cpp
@@ -12,7 +12,7 @@
#include "core/fpdfapi/page/cpdf_function.h"
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_document.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_transferfunc.h"
#include "core/fpdfapi/render/cpdf_type3cache.h"
diff --git a/core/fpdfapi/render/cpdf_imagecacheentry.cpp b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
index 615a44d869..681c39e624 100644
--- a/core/fpdfapi/render/cpdf_imagecacheentry.cpp
+++ b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
@@ -13,7 +13,7 @@
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_document.h"
#include "core/fpdfapi/parser/cpdf_stream.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fpdfapi/render/cpdf_rendercontext.h"
#include "core/fpdfapi/render/cpdf_renderstatus.h"
@@ -37,22 +37,22 @@ void CPDF_ImageCacheEntry::Reset(const RetainPtr<CFX_DIBitmap>& pBitmap) {
}
static uint32_t FPDF_ImageCache_EstimateImageSize(
- const RetainPtr<CFX_DIBSource>& pDIB) {
+ const RetainPtr<CFX_DIBBase>& pDIB) {
return pDIB && pDIB->GetBuffer()
? (uint32_t)pDIB->GetHeight() * pDIB->GetPitch() +
(uint32_t)pDIB->GetPaletteSize() * 4
: 0;
}
-RetainPtr<CFX_DIBSource> CPDF_ImageCacheEntry::DetachBitmap() {
+RetainPtr<CFX_DIBBase> CPDF_ImageCacheEntry::DetachBitmap() {
return std::move(m_pCurBitmap);
}
-RetainPtr<CFX_DIBSource> CPDF_ImageCacheEntry::DetachMask() {
+RetainPtr<CFX_DIBBase> CPDF_ImageCacheEntry::DetachMask() {
return std::move(m_pCurMask);
}
-CPDF_DIBSource::LoadState CPDF_ImageCacheEntry::StartGetCachedBitmap(
+CPDF_DIBBase::LoadState CPDF_ImageCacheEntry::StartGetCachedBitmap(
const CPDF_Dictionary* pFormResources,
CPDF_Dictionary* pPageResources,
bool bStdCS,
@@ -64,32 +64,32 @@ CPDF_DIBSource::LoadState CPDF_ImageCacheEntry::StartGetCachedBitmap(
if (m_pCachedBitmap) {
m_pCurBitmap = m_pCachedBitmap;
m_pCurMask = m_pCachedMask;
- return CPDF_DIBSource::LoadState::kSuccess;
+ return CPDF_DIBBase::LoadState::kSuccess;
}
- m_pCurBitmap = pdfium::MakeRetain<CPDF_DIBSource>();
- CPDF_DIBSource::LoadState ret =
- m_pCurBitmap.As<CPDF_DIBSource>()->StartLoadDIBSource(
+ m_pCurBitmap = pdfium::MakeRetain<CPDF_DIBBase>();
+ CPDF_DIBBase::LoadState ret =
+ m_pCurBitmap.As<CPDF_DIBBase>()->StartLoadDIBBase(
m_pDocument.Get(), m_pImage->GetStream(), true, pFormResources,
pPageResources, bStdCS, GroupFamily, bLoadMask);
- if (ret == CPDF_DIBSource::LoadState::kContinue)
- return CPDF_DIBSource::LoadState::kContinue;
+ if (ret == CPDF_DIBBase::LoadState::kContinue)
+ return CPDF_DIBBase::LoadState::kContinue;
- if (ret == CPDF_DIBSource::LoadState::kSuccess)
+ if (ret == CPDF_DIBBase::LoadState::kSuccess)
ContinueGetCachedBitmap(pRenderStatus);
else
m_pCurBitmap.Reset();
- return CPDF_DIBSource::LoadState::kFail;
+ return CPDF_DIBBase::LoadState::kFail;
}
bool CPDF_ImageCacheEntry::Continue(PauseIndicatorIface* pPause,
CPDF_RenderStatus* pRenderStatus) {
- CPDF_DIBSource::LoadState ret =
- m_pCurBitmap.As<CPDF_DIBSource>()->ContinueLoadDIBSource(pPause);
- if (ret == CPDF_DIBSource::LoadState::kContinue)
+ CPDF_DIBBase::LoadState ret =
+ m_pCurBitmap.As<CPDF_DIBBase>()->ContinueLoadDIBBase(pPause);
+ if (ret == CPDF_DIBBase::LoadState::kContinue)
return true;
- if (ret == CPDF_DIBSource::LoadState::kSuccess)
+ if (ret == CPDF_DIBBase::LoadState::kSuccess)
ContinueGetCachedBitmap(pRenderStatus);
else
m_pCurBitmap.Reset();
@@ -98,8 +98,8 @@ bool CPDF_ImageCacheEntry::Continue(PauseIndicatorIface* pPause,
void CPDF_ImageCacheEntry::ContinueGetCachedBitmap(
CPDF_RenderStatus* pRenderStatus) {
- m_MatteColor = m_pCurBitmap.As<CPDF_DIBSource>()->GetMatteColor();
- m_pCurMask = m_pCurBitmap.As<CPDF_DIBSource>()->DetachMask();
+ m_MatteColor = m_pCurBitmap.As<CPDF_DIBBase>()->GetMatteColor();
+ m_pCurMask = m_pCurBitmap.As<CPDF_DIBBase>()->DetachMask();
CPDF_RenderContext* pContext = pRenderStatus->GetContext();
CPDF_PageRenderCache* pPageRenderCache = pContext->GetPageCache();
m_dwTimeCount = pPageRenderCache->GetTimeCount();
diff --git a/core/fpdfapi/render/cpdf_imagecacheentry.h b/core/fpdfapi/render/cpdf_imagecacheentry.h
index df13c4b3f8..8a4f919e8d 100644
--- a/core/fpdfapi/render/cpdf_imagecacheentry.h
+++ b/core/fpdfapi/render/cpdf_imagecacheentry.h
@@ -9,7 +9,7 @@
#include <memory>
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
@@ -32,7 +32,7 @@ class CPDF_ImageCacheEntry {
uint32_t GetTimeCount() const { return m_dwTimeCount; }
CPDF_Image* GetImage() const { return m_pImage.Get(); }
- CPDF_DIBSource::LoadState StartGetCachedBitmap(
+ CPDF_DIBBase::LoadState StartGetCachedBitmap(
const CPDF_Dictionary* pFormResources,
CPDF_Dictionary* pPageResources,
bool bStdCS,
@@ -43,8 +43,8 @@ class CPDF_ImageCacheEntry {
// Returns whether to Continue() or not.
bool Continue(PauseIndicatorIface* pPause, CPDF_RenderStatus* pRenderStatus);
- RetainPtr<CFX_DIBSource> DetachBitmap();
- RetainPtr<CFX_DIBSource> DetachMask();
+ RetainPtr<CFX_DIBBase> DetachBitmap();
+ RetainPtr<CFX_DIBBase> DetachMask();
int m_dwTimeCount;
uint32_t m_MatteColor;
@@ -55,10 +55,10 @@ class CPDF_ImageCacheEntry {
UnownedPtr<CPDF_Document> const m_pDocument;
RetainPtr<CPDF_Image> const m_pImage;
- RetainPtr<CFX_DIBSource> m_pCurBitmap;
- RetainPtr<CFX_DIBSource> m_pCurMask;
- RetainPtr<CFX_DIBSource> m_pCachedBitmap;
- RetainPtr<CFX_DIBSource> m_pCachedMask;
+ RetainPtr<CFX_DIBBase> m_pCurBitmap;
+ RetainPtr<CFX_DIBBase> m_pCurMask;
+ RetainPtr<CFX_DIBBase> m_pCachedBitmap;
+ RetainPtr<CFX_DIBBase> m_pCachedMask;
uint32_t m_dwCacheSize;
};
diff --git a/core/fpdfapi/render/cpdf_imageloader.cpp b/core/fpdfapi/render/cpdf_imageloader.cpp
index f3a626350b..157bc48d1b 100644
--- a/core/fpdfapi/render/cpdf_imageloader.cpp
+++ b/core/fpdfapi/render/cpdf_imageloader.cpp
@@ -8,7 +8,7 @@
#include "core/fpdfapi/page/cpdf_image.h"
#include "core/fpdfapi/page/cpdf_imageobject.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_imagecacheentry.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fpdfapi/render/cpdf_renderstatus.h"
@@ -34,7 +34,7 @@ bool CPDF_ImageLoader::Start(CPDF_ImageObject* pImage,
ret = pCache->StartGetCachedBitmap(m_pImageObject->GetImage(), bStdCS,
GroupFamily, bLoadMask, pRenderStatus);
} else {
- ret = m_pImageObject->GetImage()->StartLoadDIBSource(
+ ret = m_pImageObject->GetImage()->StartLoadDIBBase(
pRenderStatus->GetFormResource(), pRenderStatus->GetPageResource(),
bStdCS, GroupFamily, bLoadMask);
}
diff --git a/core/fpdfapi/render/cpdf_imageloader.h b/core/fpdfapi/render/cpdf_imageloader.h
index 629609df48..de29d0e2a9 100644
--- a/core/fpdfapi/render/cpdf_imageloader.h
+++ b/core/fpdfapi/render/cpdf_imageloader.h
@@ -31,8 +31,8 @@ class CPDF_ImageLoader {
CPDF_RenderStatus* pRenderStatus);
bool Continue(PauseIndicatorIface* pPause, CPDF_RenderStatus* pRenderStatus);
- RetainPtr<CFX_DIBSource> m_pBitmap;
- RetainPtr<CFX_DIBSource> m_pMask;
+ RetainPtr<CFX_DIBBase> m_pBitmap;
+ RetainPtr<CFX_DIBBase> m_pMask;
uint32_t m_MatteColor;
bool m_bCached;
diff --git a/core/fpdfapi/render/cpdf_imagerenderer.cpp b/core/fpdfapi/render/cpdf_imagerenderer.cpp
index 9f14e8470c..33aca42ee1 100644
--- a/core/fpdfapi/render/cpdf_imagerenderer.cpp
+++ b/core/fpdfapi/render/cpdf_imagerenderer.cpp
@@ -19,7 +19,7 @@
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_document.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fpdfapi/render/cpdf_rendercontext.h"
#include "core/fpdfapi/render/cpdf_renderstatus.h"
@@ -29,8 +29,8 @@
#include "core/fxcrt/maybe_owned.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
#include "core/fxge/cfx_pathdata.h"
+#include "core/fxge/dib/cfx_dibbase.h"
#include "core/fxge/dib/cfx_dibitmap.h"
-#include "core/fxge/dib/cfx_dibsource.h"
#include "core/fxge/dib/cfx_imagestretcher.h"
#include "core/fxge/dib/cfx_imagetransformer.h"
#include "third_party/base/ptr_util.h"
@@ -53,7 +53,7 @@ CPDF_ImageRenderer::CPDF_ImageRenderer()
CPDF_ImageRenderer::~CPDF_ImageRenderer() {}
-bool CPDF_ImageRenderer::StartLoadDIBSource() {
+bool CPDF_ImageRenderer::StartLoadDIBBase() {
CFX_FloatRect image_rect_f = m_ImageMatrix.GetUnitRect();
FX_RECT image_rect = image_rect_f.GetOuterRect();
if (!image_rect.Valid())
@@ -69,13 +69,13 @@ bool CPDF_ImageRenderer::StartLoadDIBSource() {
return false;
}
-bool CPDF_ImageRenderer::StartRenderDIBSource() {
+bool CPDF_ImageRenderer::StartRenderDIBBase() {
if (!m_Loader.m_pBitmap)
return false;
CPDF_GeneralState& state = m_pImageObject->m_GeneralState;
m_BitmapAlpha = FXSYS_round(255 * state.GetFillAlpha());
- m_pDIBSource = m_Loader.m_pBitmap;
+ m_pDIBBase = m_Loader.m_pBitmap;
if (m_pRenderStatus->GetRenderOptions().ColorModeIs(
CPDF_RenderOptions::kAlpha) &&
!m_Loader.m_pMask) {
@@ -86,7 +86,7 @@ bool CPDF_ImageRenderer::StartRenderDIBSource() {
state.SetTransferFunc(m_pRenderStatus->GetTransferFunc(state.GetTR()));
if (state.GetTransferFunc() && !state.GetTransferFunc()->GetIdentity()) {
- m_pDIBSource = m_Loader.m_pBitmap =
+ m_pDIBBase = m_Loader.m_pBitmap =
state.GetTransferFunc()->TranslateImage(m_Loader.m_pBitmap);
if (m_Loader.m_bCached && m_Loader.m_pMask)
m_Loader.m_pMask = m_Loader.m_pMask->Clone(nullptr);
@@ -96,7 +96,7 @@ bool CPDF_ImageRenderer::StartRenderDIBSource() {
m_FillArgb = 0;
m_bPatternColor = false;
m_pPattern = nullptr;
- if (m_pDIBSource->IsAlphaMask()) {
+ if (m_pDIBBase->IsAlphaMask()) {
const CPDF_Color* pColor = m_pImageObject->m_ColorState.GetFillColor();
if (pColor && pColor->IsPattern()) {
m_pPattern = pColor->GetPattern();
@@ -106,12 +106,12 @@ bool CPDF_ImageRenderer::StartRenderDIBSource() {
m_FillArgb = m_pRenderStatus->GetFillArgb(m_pImageObject.Get());
} else if (m_pRenderStatus->GetRenderOptions().ColorModeIs(
CPDF_RenderOptions::kGray)) {
- RetainPtr<CFX_DIBitmap> pClone = m_pDIBSource->Clone(nullptr);
+ RetainPtr<CFX_DIBitmap> pClone = m_pDIBBase->Clone(nullptr);
if (!pClone)
return false;
pClone->ConvertColorScale(0xffffff, 0);
- m_pDIBSource = pClone;
+ m_pDIBBase = pClone;
}
m_Flags = 0;
if (m_pRenderStatus->GetRenderOptions().HasFlag(RENDER_FORCE_DOWNSAMPLE))
@@ -136,7 +136,7 @@ bool CPDF_ImageRenderer::StartRenderDIBSource() {
if (m_BitmapAlpha != 255 || !state.HasRef() || !state.GetFillOP() ||
state.GetOPMode() != 0 || state.GetBlendType() != FXDIB_BLEND_NORMAL ||
state.GetStrokeAlpha() != 1.0f || state.GetFillAlpha() != 1.0f) {
- return StartDIBSource();
+ return StartDIBBase();
}
CPDF_Document* pDocument = nullptr;
CPDF_Page* pPage = nullptr;
@@ -154,14 +154,14 @@ bool CPDF_ImageRenderer::StartRenderDIBSource() {
CPDF_ColorSpace* pColorSpace =
pDocument->LoadColorSpace(pCSObj, pPageResources);
if (!pColorSpace)
- return StartDIBSource();
+ return StartDIBBase();
int format = pColorSpace->GetFamily();
if (format == PDFCS_DEVICECMYK || format == PDFCS_SEPARATION ||
format == PDFCS_DEVICEN) {
m_BlendType = FXDIB_BLEND_DARKEN;
}
pDocument->GetPageData()->ReleaseColorSpace(pCSObj);
- return StartDIBSource();
+ return StartDIBBase();
}
bool CPDF_ImageRenderer::Start(CPDF_RenderStatus* pStatus,
@@ -183,13 +183,13 @@ bool CPDF_ImageRenderer::Start(CPDF_RenderStatus* pStatus,
}
m_ImageMatrix = m_pImageObject->matrix();
m_ImageMatrix.Concat(*pObj2Device);
- if (StartLoadDIBSource())
+ if (StartLoadDIBBase())
return true;
- return StartRenderDIBSource();
+ return StartRenderDIBBase();
}
bool CPDF_ImageRenderer::Start(CPDF_RenderStatus* pStatus,
- const RetainPtr<CFX_DIBSource>& pDIBSource,
+ const RetainPtr<CFX_DIBBase>& pDIBBase,
FX_ARGB bitmap_argb,
int bitmap_alpha,
const CFX_Matrix* pImage2Device,
@@ -197,14 +197,14 @@ bool CPDF_ImageRenderer::Start(CPDF_RenderStatus* pStatus,
bool bStdCS,
int blendType) {
m_pRenderStatus = pStatus;
- m_pDIBSource = pDIBSource;
+ m_pDIBBase = pDIBBase;
m_FillArgb = bitmap_argb;
m_BitmapAlpha = bitmap_alpha;
m_ImageMatrix = *pImage2Device;
m_Flags = flags;
m_bStdCS = bStdCS;
m_BlendType = blendType;
- return StartDIBSource();
+ return StartDIBBase();
}
bool CPDF_ImageRenderer::NotDrawing() const {
@@ -228,7 +228,7 @@ CFX_Matrix CPDF_ImageRenderer::GetDrawMatrix(const FX_RECT& rect) const {
void CPDF_ImageRenderer::CalculateDrawImage(
CFX_DefaultRenderDevice* pBitmapDevice1,
CFX_DefaultRenderDevice* pBitmapDevice2,
- const RetainPtr<CFX_DIBSource>& pDIBSource,
+ const RetainPtr<CFX_DIBBase>& pDIBBase,
CFX_Matrix* pNewMatrix,
const FX_RECT& rect) const {
CPDF_RenderStatus bitmap_render(m_pRenderStatus->GetContext(),
@@ -238,8 +238,8 @@ void CPDF_ImageRenderer::CalculateDrawImage(
bitmap_render.Initialize(nullptr, nullptr);
CPDF_ImageRenderer image_render;
- if (image_render.Start(&bitmap_render, pDIBSource, 0xffffffff, 255,
- pNewMatrix, m_Flags, true, FXDIB_BLEND_NORMAL)) {
+ if (image_render.Start(&bitmap_render, pDIBBase, 0xffffffff, 255, pNewMatrix,
+ m_Flags, true, FXDIB_BLEND_NORMAL)) {
image_render.Continue(nullptr);
}
if (m_Loader.m_MatteColor == 0xffffffff)
@@ -309,8 +309,8 @@ bool CPDF_ImageRenderer::DrawPatternImage(const CFX_Matrix* pObj2Device) {
return true;
}
bitmap_device2.GetBitmap()->Clear(0);
- CalculateDrawImage(&bitmap_device1, &bitmap_device2, m_pDIBSource,
- &new_matrix, rect);
+ CalculateDrawImage(&bitmap_device1, &bitmap_device2, m_pDIBBase, &new_matrix,
+ rect);
bitmap_device2.GetBitmap()->ConvertFormat(FXDIB_8bppMask);
bitmap_device1.GetBitmap()->MultiplyAlpha(bitmap_device2.GetBitmap());
bitmap_device1.GetBitmap()->MultiplyAlpha(255);
@@ -345,7 +345,7 @@ bool CPDF_ImageRenderer::DrawMaskedImage() {
bitmap_render.SetStdCS(true);
bitmap_render.Initialize(nullptr, nullptr);
CPDF_ImageRenderer image_render;
- if (image_render.Start(&bitmap_render, m_pDIBSource, 0, 255, &new_matrix,
+ if (image_render.Start(&bitmap_render, m_pDIBBase, 0, 255, &new_matrix,
m_Flags, true, FXDIB_BLEND_NORMAL)) {
image_render.Continue(nullptr);
}
@@ -376,12 +376,12 @@ bool CPDF_ImageRenderer::DrawMaskedImage() {
return false;
}
-bool CPDF_ImageRenderer::StartDIBSource() {
- if (!(m_Flags & RENDER_FORCE_DOWNSAMPLE) && m_pDIBSource->GetBPP() > 1) {
- FX_SAFE_SIZE_T image_size = m_pDIBSource->GetBPP();
+bool CPDF_ImageRenderer::StartDIBBase() {
+ if (!(m_Flags & RENDER_FORCE_DOWNSAMPLE) && m_pDIBBase->GetBPP() > 1) {
+ FX_SAFE_SIZE_T image_size = m_pDIBBase->GetBPP();
image_size /= 8;
- image_size *= m_pDIBSource->GetWidth();
- image_size *= m_pDIBSource->GetHeight();
+ image_size *= m_pDIBBase->GetWidth();
+ image_size *= m_pDIBBase->GetHeight();
if (!image_size.IsValid())
return false;
@@ -391,8 +391,8 @@ bool CPDF_ImageRenderer::StartDIBSource() {
}
}
#ifdef _SKIA_SUPPORT_
- RetainPtr<CFX_DIBitmap> premultiplied = m_pDIBSource->Clone(nullptr);
- if (m_pDIBSource->HasAlpha())
+ RetainPtr<CFX_DIBitmap> premultiplied = m_pDIBBase->Clone(nullptr);
+ if (m_pDIBBase->HasAlpha())
CFX_SkiaDeviceDriver::PreMultiply(premultiplied);
if (m_pRenderStatus->GetRenderDevice()->StartDIBitsWithBlend(
premultiplied, m_BitmapAlpha, m_FillArgb, &m_ImageMatrix, m_Flags,
@@ -405,7 +405,7 @@ bool CPDF_ImageRenderer::StartDIBSource() {
}
#else
if (m_pRenderStatus->GetRenderDevice()->StartDIBitsWithBlend(
- m_pDIBSource, m_BitmapAlpha, m_FillArgb, &m_ImageMatrix, m_Flags,
+ m_pDIBBase, m_BitmapAlpha, m_FillArgb, &m_ImageMatrix, m_Flags,
&m_DeviceHandle, m_BlendType)) {
if (m_DeviceHandle) {
m_Status = 3;
@@ -429,7 +429,7 @@ bool CPDF_ImageRenderer::StartDIBSource() {
clip_box.Intersect(image_rect);
m_Status = 2;
m_pTransformer = pdfium::MakeUnique<CFX_ImageTransformer>(
- m_pDIBSource, &m_ImageMatrix, m_Flags, &clip_box);
+ m_pDIBBase, &m_ImageMatrix, m_Flags, &clip_box);
return true;
}
if (m_ImageMatrix.a < 0)
@@ -440,18 +440,18 @@ bool CPDF_ImageRenderer::StartDIBSource() {
int dest_left = dest_width > 0 ? image_rect.left : image_rect.right;
int dest_top = dest_height > 0 ? image_rect.top : image_rect.bottom;
- if (m_pDIBSource->IsOpaqueImage() && m_BitmapAlpha == 255) {
+ if (m_pDIBBase->IsOpaqueImage() && m_BitmapAlpha == 255) {
if (m_pRenderStatus->GetRenderDevice()->StretchDIBitsWithFlagsAndBlend(
- m_pDIBSource, dest_left, dest_top, dest_width, dest_height, m_Flags,
+ m_pDIBBase, dest_left, dest_top, dest_width, dest_height, m_Flags,
m_BlendType)) {
return false;
}
}
- if (m_pDIBSource->IsAlphaMask()) {
+ if (m_pDIBBase->IsAlphaMask()) {
if (m_BitmapAlpha != 255)
m_FillArgb = FXARGB_MUL_ALPHA(m_FillArgb, m_BitmapAlpha);
if (m_pRenderStatus->GetRenderDevice()->StretchBitMaskWithFlags(
- m_pDIBSource, dest_left, dest_top, dest_width, dest_height,
+ m_pDIBBase, dest_left, dest_top, dest_width, dest_height,
m_FillArgb, m_Flags)) {
return false;
}
@@ -468,7 +468,7 @@ bool CPDF_ImageRenderer::StartDIBSource() {
dest_rect.left - image_rect.left, dest_rect.top - image_rect.top,
dest_rect.right - image_rect.left, dest_rect.bottom - image_rect.top);
RetainPtr<CFX_DIBitmap> pStretched =
- m_pDIBSource->StretchTo(dest_width, dest_height, m_Flags, &dest_clip);
+ m_pDIBBase->StretchTo(dest_width, dest_height, m_Flags, &dest_clip);
if (pStretched) {
m_pRenderStatus->CompositeDIBitmap(pStretched, dest_rect.left,
dest_rect.top, m_FillArgb, m_BitmapAlpha,
@@ -478,7 +478,7 @@ bool CPDF_ImageRenderer::StartDIBSource() {
}
bool CPDF_ImageRenderer::StartBitmapAlpha() {
- if (m_pDIBSource->IsOpaqueImage()) {
+ if (m_pDIBBase->IsOpaqueImage()) {
CFX_PathData path;
path.AppendRect(0, 0, 1, 1);
path.Transform(&m_ImageMatrix);
@@ -488,11 +488,11 @@ bool CPDF_ImageRenderer::StartBitmapAlpha() {
fill_color, 0, FXFILL_WINDING);
return false;
}
- RetainPtr<CFX_DIBSource> pAlphaMask;
- if (m_pDIBSource->IsAlphaMask())
- pAlphaMask = m_pDIBSource;
+ RetainPtr<CFX_DIBBase> pAlphaMask;
+ if (m_pDIBBase->IsAlphaMask())
+ pAlphaMask = m_pDIBBase;
else
- pAlphaMask = m_pDIBSource->CloneAlphaMask();
+ pAlphaMask = m_pDIBBase->CloneAlphaMask();
if (fabs(m_ImageMatrix.b) >= 0.5f || fabs(m_ImageMatrix.c) >= 0.5f) {
int left;
@@ -554,7 +554,7 @@ bool CPDF_ImageRenderer::Continue(PauseIndicatorIface* pPause) {
if (m_Loader.Continue(pPause, m_pRenderStatus.Get()))
return true;
- if (StartRenderDIBSource())
+ if (StartRenderDIBBase())
return Continue(pPause);
}
return false;
diff --git a/core/fpdfapi/render/cpdf_imagerenderer.h b/core/fpdfapi/render/cpdf_imagerenderer.h
index e6c6d0c1b8..c6ccb0c86d 100644
--- a/core/fpdfapi/render/cpdf_imagerenderer.h
+++ b/core/fpdfapi/render/cpdf_imagerenderer.h
@@ -15,7 +15,7 @@
#include "core/fxge/dib/cfx_imagerenderer.h"
class CFX_DIBitmap;
-class CFX_DIBSource;
+class CFX_DIBBase;
class CFX_DefaultRenderDevice;
class CFX_ImageTransformer;
class CPDF_ImageObject;
@@ -35,7 +35,7 @@ class CPDF_ImageRenderer {
int blendType);
bool Start(CPDF_RenderStatus* pStatus,
- const RetainPtr<CFX_DIBSource>& pDIBSource,
+ const RetainPtr<CFX_DIBBase>& pDIBBase,
FX_ARGB bitmap_argb,
int bitmap_alpha,
const CFX_Matrix* pImage2Device,
@@ -48,9 +48,9 @@ class CPDF_ImageRenderer {
private:
bool StartBitmapAlpha();
- bool StartDIBSource();
- bool StartRenderDIBSource();
- bool StartLoadDIBSource();
+ bool StartDIBBase();
+ bool StartRenderDIBBase();
+ bool StartLoadDIBBase();
bool DrawMaskedImage();
bool DrawPatternImage(const CFX_Matrix* pObj2Device);
bool NotDrawing() const;
@@ -58,7 +58,7 @@ class CPDF_ImageRenderer {
CFX_Matrix GetDrawMatrix(const FX_RECT& rect) const;
void CalculateDrawImage(CFX_DefaultRenderDevice* bitmap_device1,
CFX_DefaultRenderDevice* bitmap_device2,
- const RetainPtr<CFX_DIBSource>& pDIBSource,
+ const RetainPtr<CFX_DIBBase>& pDIBBase,
CFX_Matrix* pNewMatrix,
const FX_RECT& rect) const;
void HandleFilters();
@@ -69,7 +69,7 @@ class CPDF_ImageRenderer {
UnownedPtr<const CFX_Matrix> m_pObj2Device;
CFX_Matrix m_ImageMatrix;
CPDF_ImageLoader m_Loader;
- RetainPtr<CFX_DIBSource> m_pDIBSource;
+ RetainPtr<CFX_DIBBase> m_pDIBBase;
int m_BitmapAlpha;
bool m_bPatternColor;
UnownedPtr<CPDF_Pattern> m_pPattern;
diff --git a/core/fpdfapi/render/cpdf_pagerendercache.cpp b/core/fpdfapi/render/cpdf_pagerendercache.cpp
index 1358943454..61602d36f0 100644
--- a/core/fpdfapi/render/cpdf_pagerendercache.cpp
+++ b/core/fpdfapi/render/cpdf_pagerendercache.cpp
@@ -94,17 +94,17 @@ bool CPDF_PageRenderCache::StartGetCachedBitmap(
m_pCurImageCacheEntry =
new CPDF_ImageCacheEntry(m_pPage->GetDocument(), pImage);
}
- CPDF_DIBSource::LoadState ret = m_pCurImageCacheEntry->StartGetCachedBitmap(
+ CPDF_DIBBase::LoadState ret = m_pCurImageCacheEntry->StartGetCachedBitmap(
pRenderStatus->GetFormResource(), m_pPage->m_pPageResources.Get(), bStdCS,
GroupFamily, bLoadMask, pRenderStatus);
- if (ret == CPDF_DIBSource::LoadState::kContinue)
+ if (ret == CPDF_DIBBase::LoadState::kContinue)
return true;
m_nTimeCount++;
if (!m_bCurFindCache)
m_ImageCache[pStream] = m_pCurImageCacheEntry;
- if (ret == CPDF_DIBSource::LoadState::kFail)
+ if (ret == CPDF_DIBBase::LoadState::kFail)
m_nCacheSize += m_pCurImageCacheEntry->EstimateSize();
return false;
diff --git a/core/fpdfapi/render/cpdf_renderstatus.cpp b/core/fpdfapi/render/cpdf_renderstatus.cpp
index 2cbe495ce4..9965cbb945 100644
--- a/core/fpdfapi/render/cpdf_renderstatus.cpp
+++ b/core/fpdfapi/render/cpdf_renderstatus.cpp
@@ -37,7 +37,7 @@
#include "core/fpdfapi/parser/cpdf_document.h"
#include "core/fpdfapi/render/cpdf_charposlist.h"
#include "core/fpdfapi/render/cpdf_devicebuffer.h"
-#include "core/fpdfapi/render/cpdf_dibsource.h"
+#include "core/fpdfapi/render/cpdf_dibbase.h"
#include "core/fpdfapi/render/cpdf_docrenderdata.h"
#include "core/fpdfapi/render/cpdf_imagerenderer.h"
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
@@ -1582,7 +1582,7 @@ bool CPDF_RenderStatus::ProcessTransparency(CPDF_PageObject* pPageObj,
if (pSMaskDict) {
CFX_Matrix smask_matrix = *pPageObj->m_GeneralState.GetSMaskMatrix();
smask_matrix.Concat(*pObj2Device);
- RetainPtr<CFX_DIBSource> pSMaskSource =
+ RetainPtr<CFX_DIBBase> pSMaskSource =
LoadSMask(pSMaskDict, &rect, &smask_matrix);
if (pSMaskSource)
bitmap->MultiplyAlpha(pSMaskSource);
diff --git a/core/fpdfapi/render/cpdf_transferfunc.cpp b/core/fpdfapi/render/cpdf_transferfunc.cpp
index 25717437d3..f67f508e8e 100644
--- a/core/fpdfapi/render/cpdf_transferfunc.cpp
+++ b/core/fpdfapi/render/cpdf_transferfunc.cpp
@@ -8,7 +8,7 @@
#include "core/fpdfapi/parser/cpdf_document.h"
#include "core/fpdfapi/render/cpdf_dibtransferfunc.h"
-#include "core/fxge/dib/cfx_dibsource.h"
+#include "core/fxge/dib/cfx_dibbase.h"
CPDF_TransferFunc::CPDF_TransferFunc(CPDF_Document* pDoc) : m_pPDFDoc(pDoc) {}
@@ -20,8 +20,8 @@ FX_COLORREF CPDF_TransferFunc::TranslateColor(FX_COLORREF colorref) const {
m_Samples[FXSYS_GetRValue(colorref)]);
}
-RetainPtr<CFX_DIBSource> CPDF_TransferFunc::TranslateImage(
- const RetainPtr<CFX_DIBSource>& pSrc) {
+RetainPtr<CFX_DIBBase> CPDF_TransferFunc::TranslateImage(
+ const RetainPtr<CFX_DIBBase>& pSrc) {
RetainPtr<CPDF_TransferFunc> pHolder(this);
auto pDest = pdfium::MakeRetain<CPDF_DIBTransferFunc>(pHolder);
pDest->LoadSrc(pSrc);
diff --git a/core/fpdfapi/render/cpdf_transferfunc.h b/core/fpdfapi/render/cpdf_transferfunc.h
index dfc186ec6c..e8964727c6 100644
--- a/core/fpdfapi/render/cpdf_transferfunc.h
+++ b/core/fpdfapi/render/cpdf_transferfunc.h
@@ -12,7 +12,7 @@
#include "core/fxge/fx_dib.h"
class CPDF_Document;
-class CFX_DIBSource;
+class CFX_DIBBase;
class CPDF_TransferFunc : public Retainable {
public:
@@ -20,7 +20,7 @@ class CPDF_TransferFunc : public Retainable {
friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
FX_COLORREF TranslateColor(FX_COLORREF colorref) const;
- RetainPtr<CFX_DIBSource> TranslateImage(const RetainPtr<CFX_DIBSource>& pSrc);
+ RetainPtr<CFX_DIBBase> TranslateImage(const RetainPtr<CFX_DIBBase>& pSrc);
const CPDF_Document* GetDocument() const { return m_pPDFDoc.Get(); }