7#ifndef CORE_FXGE_CFX_GLYPHBITMAP_H_
8#define CORE_FXGE_CFX_GLYPHBITMAP_H_
10#include "core/fxcrt/retain_ptr.h"
23 int left()
const {
return m_Left; }
24 int top()
const {
return m_Top; }
static bool UseSkiaRenderer()
bool Attach(RetainPtr< CFX_DIBitmap > pBitmap)
bool CreateWithBackdrop(int width, int height, FXDIB_Format format, RetainPtr< CFX_DIBitmap > backdrop)
bool Create(int width, int height, FXDIB_Format format)
void Clear(uint32_t color)
const RetainPtr< CFX_DIBitmap > & GetBitmap() const
CFX_GlyphBitmap(const CFX_GlyphBitmap &)=delete
CFX_GlyphBitmap(int left, int top)
CFX_GlyphBitmap & operator=(const CFX_GlyphBitmap &)=delete
CFX_Matrix & operator=(const CFX_Matrix &other)=default
CFX_Matrix & operator*=(const CFX_Matrix &other)
CFX_Matrix operator*(const CFX_Matrix &right) const
void Translate(int32_t x, int32_t y)
CFX_Matrix GetInverse() const
void Scale(float sx, float sy)
void Concat(const CFX_Matrix &right)
void AppendRect(float left, float bottom, float right, float top)
bool MultiplyAlpha(float alpha)
bool MultiplyAlphaMask(RetainPtr< const CFX_DIBitmap > mask)
static CFX_Matrix GetFlipMatrix(float width, float height, float left, float top)
std::vector< RetainPtr< CPDF_Object > >::const_iterator const_iterator
FX_COLORREF GetStrokeColorRef() const
FX_COLORREF GetFillColorRef() const
const CPDF_Color * GetStrokeColor() const
const CPDF_Color * GetFillColor() const
ByteString GetByteStringFor(const ByteString &key) const
std::map< ByteString, RetainPtr< CPDF_Object >, std::less<> > DictMap
CPDF_Document * GetDocument() const
float GetStrokeAlpha() const
float GetFillAlpha() const
RetainPtr< CPDF_TransferFunc > GetTransferFunc() const
BlendMode GetBlendType() const
const CFX_Matrix * GetSMaskMatrix() const
const CPDF_ColorState & color_state() const
CPDF_ImageRenderer(CPDF_RenderStatus *pStatus)
bool Start(CPDF_ImageObject *pImageObject, const CFX_Matrix &mtObj2Device, bool bStdCS)
bool Continue(PauseIndicatorIface *pPause)
const CPDF_Transparency & GetTransparency() const
const CPDF_GraphicStates & graphic_states() const
virtual const CPDF_PathObject * AsPath() const
void SetRect(const CFX_FloatRect &rect)
const CPDF_ColorState & color_state() const
const CPDF_GeneralState & general_state() const
virtual bool IsImage() const
const CPDF_ClipPath & clip_path() const
virtual Type GetType() const =0
CPDF_GeneralState & mutable_general_state()
FX_RECT GetTransformedBBox(const CFX_Matrix &matrix) const
virtual CPDF_ShadingObject * AsShading()
const CFX_FloatRect & GetRect() const
virtual CPDF_ImageObject * AsImage()
virtual CPDF_FormObject * AsForm()
virtual CPDF_TextObject * AsText()
const CPDF_TextState & text_state() const
virtual CPDF_PathObject * AsPath()
const CFX_GraphState & graph_state() const
virtual bool IsForm() const
CPDF_ClipPath & mutable_clip_path()
virtual bool IsPath() const
CPDF_ColorState & mutable_color_state()
void set_filltype(CFX_FillRenderOptions::FillType fill_type)
const CFX_Matrix & matrix() const
CFX_FillRenderOptions::FillType filltype() const
void AppendFloatRect(const CFX_FloatRect &rect)
const CFX_Matrix & pattern_to_form() const
void SetColorMode(Type mode)
void SetDropObjects(bool bDropObjects)
void SetType3Char(CPDF_Type3Char *pType3Char)
RetainPtr< CPDF_TransferFunc > GetTransferFunc(RetainPtr< const CPDF_Object > pObject) const
void SetDeviceMatrix(const CFX_Matrix &matrix)
CPDF_RenderStatus(CPDF_RenderContext *pContext, CFX_RenderDevice *pDevice)
void SetFillColor(FX_ARGB color)
void SetOptions(const CPDF_RenderOptions &options)
void RenderSingleObject(CPDF_PageObject *pObj, const CFX_Matrix &mtObj2Device)
bool ContinueSingleObject(CPDF_PageObject *pObj, const CFX_Matrix &mtObj2Device, PauseIndicatorIface *pPause)
void SetTransparency(const CPDF_Transparency &transparency)
void RenderObjectList(const CPDF_PageObjectHolder *pObjectHolder, const CFX_Matrix &mtObj2Device)
void SetStdCS(bool bStdCS)
FX_ARGB GetFillArgbForType3(CPDF_PageObject *pObj) const
void SetGroupFamily(CPDF_ColorSpace::Family family)
void DrawShadingPattern(CPDF_ShadingPattern *pattern, const CPDF_PageObject *pPageObj, const CFX_Matrix &mtObj2Device, bool stroke)
void Initialize(const CPDF_RenderStatus *pParentStatus, const CPDF_GraphicStates *pInitialStates)
void DrawTilingPattern(CPDF_TilingPattern *pattern, CPDF_PageObject *pPageObj, const CFX_Matrix &mtObj2Device, bool stroke)
void SetInGroup(bool bInGroup)
void SetFormResource(RetainPtr< const CPDF_Dictionary > pRes)
FX_ARGB GetFillArgb(CPDF_PageObject *pObj) const
void CompositeDIBitmap(RetainPtr< CFX_DIBitmap > bitmap, int left, int top, FX_ARGB mask_argb, float alpha, BlendMode blend_mode, const CPDF_Transparency &transparency)
void SetLoadMask(bool bLoadMask)
void ProcessClipPath(const CPDF_ClipPath &ClipPath, const CFX_Matrix &mtObj2Device)
CPDF_RenderTiling & operator=(const CPDF_RenderTiling &)=delete
CPDF_RenderTiling()=delete
static RetainPtr< CFX_DIBitmap > Draw(CPDF_RenderStatus *pRenderStatus, CPDF_PageObject *pPageObj, CPDF_TilingPattern *pPattern, CPDF_Form *pPatternForm, const CFX_Matrix &mtObj2Device, const FX_RECT &clip_box, bool bStroke)
CPDF_RenderTiling(const CPDF_RenderTiling &)=delete
const CFX_Matrix & matrix() const
CFX_Matrix GetTextMatrix() const
CPDF_Transparency & operator=(const CPDF_Transparency &other)
RetainPtr< CFX_DIBitmap > GetBitmap()
const CPDF_Font::FormIface * form() const
bool LoadBitmapFromSoleImageOfForm()
CPDF_Type3Char * LoadChar(uint32_t charcode)
CFX_Matrix & GetFontMatrix()
bool operator!=(const char *ptr) const
CFX_PTemplate< int32_t > CFX_Point
#define FXRGB2GRAY(r, g, b)
constexpr FX_ARGB ArgbEncode(uint32_t a, uint32_t r, uint32_t g, uint32_t b)
pdfium::CheckedNumeric< int32_t > FX_SAFE_INT32
int FXSYS_roundf(float f)
const char kSoftMaskSubType[]
#define NOTREACHED_NORETURN()
#define FXRC_ALPHA_OUTPUT
constexpr CFX_FillRenderOptions()
constexpr CFX_FillRenderOptions(FillType fill_type)
static constexpr CFX_FillRenderOptions WindingOptions()