7#include "core/fpdfapi/page/cpdf_imageobject.h"
11#include "core/fpdfapi/page/cpdf_docpagedata.h"
12#include "core/fpdfapi/page/cpdf_image.h"
13#include "core/fpdfapi/parser/cpdf_stream.h"
14#include "core/fxcrt/fx_coordinates.h"
15#include "core/fxge/dib/cfx_dibbase.h"
16#include "core/fxge/dib/cfx_dibitmap.h"
41CPDF_ImageObject* CPDF_ImageObject::
AsImage() {
45const CPDF_ImageObject* CPDF_ImageObject::
AsImage()
const {
57 m_pImage = std::move(pImage);
73 return pSource ? pSource->Realize() :
nullptr;
81void CPDF_ImageObject::MaybePurgeCache() {
85 RetainPtr<
const CPDF_Stream> pStream = m_pImage->GetStream();
89 uint32_t objnum = pStream->GetObjNum();
93 auto* pDoc = m_pImage->GetDocument();
97 pDoc->MaybePurgeImage(objnum);
constexpr CFX_FloatRect(float l, float b, float r, float t)
CFX_Matrix & operator=(const CFX_Matrix &other)=default
CFX_FloatRect TransformRect(const CFX_FloatRect &rect) const
void Concat(const CFX_Matrix &right)
void Transform(const CFX_Matrix &matrix) override
bool IsImage() const override
CPDF_ImageObject * AsImage() override
const CPDF_ImageObject * AsImage() const override
RetainPtr< CPDF_Image > GetImage() const
CPDF_ImageObject(int32_t content_stream)
void SetImage(RetainPtr< CPDF_Image > pImage)
~CPDF_ImageObject() override
RetainPtr< CFX_DIBitmap > GetIndependentBitmap() const
Type GetType() const override
void SetImageMatrix(const CFX_Matrix &matrix)
void SetRect(const CFX_FloatRect &rect)
void SetDirty(bool value)
CPDF_PageObject(int32_t content_stream)
void SetOriginalRect(const CFX_FloatRect &rect)
static constexpr int32_t kNoContentStream