Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
CFX_SkiaDeviceDriver Class Referencefinal

#include <fx_skia_device.h>

+ Inheritance diagram for CFX_SkiaDeviceDriver:
+ Collaboration diagram for CFX_SkiaDeviceDriver:

Public Member Functions

 ~CFX_SkiaDeviceDriver () override
 
DeviceType GetDeviceType () const override
 
int GetDeviceCaps (int caps_id) const override
 
void SaveState () override
 
void RestoreState (bool bKeepSaved) override
 
bool SetClip_PathFill (const CFX_Path &path, const CFX_Matrix *pObject2Device, const CFX_FillRenderOptions &fill_options) override
 
bool SetClip_PathStroke (const CFX_Path &path, const CFX_Matrix *pObject2Device, const CFX_GraphStateData *pGraphState) override
 
bool DrawPath (const CFX_Path &path, const CFX_Matrix *pObject2Device, const CFX_GraphStateData *pGraphState, uint32_t fill_color, uint32_t stroke_color, const CFX_FillRenderOptions &fill_options, BlendMode blend_type) override
 
bool FillRectWithBlend (const FX_RECT &rect, uint32_t fill_color, BlendMode blend_type) override
 
bool DrawCosmeticLine (const CFX_PointF &ptMoveTo, const CFX_PointF &ptLineTo, uint32_t color, BlendMode blend_type) override
 
bool GetClipBox (FX_RECT *pRect) override
 
bool GetDIBits (const RetainPtr< CFX_DIBitmap > &pBitmap, int left, int top) override
 
RetainPtr< CFX_DIBitmapGetBackDrop () override
 
bool SetDIBits (const RetainPtr< const CFX_DIBBase > &pBitmap, uint32_t color, const FX_RECT &src_rect, int dest_left, int dest_top, BlendMode blend_type) override
 
bool SetBitsWithMask (RetainPtr< const CFX_DIBBase > bitmap, RetainPtr< const CFX_DIBBase > mask, int dest_left, int dest_top, float alpha, BlendMode blend_type) override
 
void SetGroupKnockout (bool group_knockout) override
 
bool SyncInternalBitmaps () override
 
bool StretchDIBits (RetainPtr< const CFX_DIBBase > bitmap, uint32_t color, int dest_left, int dest_top, int dest_width, int dest_height, const FX_RECT *pClipRect, const FXDIB_ResampleOptions &options, BlendMode blend_type) override
 
bool StartDIBits (RetainPtr< const CFX_DIBBase > bitmap, float alpha, uint32_t color, const CFX_Matrix &matrix, const FXDIB_ResampleOptions &options, std::unique_ptr< CFX_ImageRenderer > *handle, BlendMode blend_type) override
 
bool ContinueDIBits (CFX_ImageRenderer *handle, PauseIndicatorIface *pPause) override
 
bool DrawBitsWithMask (RetainPtr< const CFX_DIBBase > bitmap, RetainPtr< const CFX_DIBBase > mask, float alpha, const CFX_Matrix &matrix, BlendMode blend_type)
 
bool DrawDeviceText (pdfium::span< const TextCharPos > pCharPos, CFX_Font *pFont, const CFX_Matrix &mtObject2Device, float font_size, uint32_t color, const CFX_TextRenderOptions &options) override
 
int GetDriverType () const override
 
bool DrawShading (const CPDF_ShadingPattern *pPattern, const CFX_Matrix *pMatrix, const FX_RECT &clip_rect, int alpha, bool bAlphaMode) override
 
bool MultiplyAlpha (float alpha) override
 
bool MultiplyAlphaMask (const RetainPtr< const CFX_DIBBase > &mask) override
 
void Clear (uint32_t color)
 
void Dump () const
 
- Public Member Functions inherited from RenderDeviceDriverIface
virtual ~RenderDeviceDriverIface ()
 
virtual void SetBaseClip (const FX_RECT &rect)
 

Static Public Member Functions

static std::unique_ptr< CFX_SkiaDeviceDriverCreate (RetainPtr< CFX_DIBitmap > pBitmap, bool bRgbByteOrder, RetainPtr< CFX_DIBitmap > pBackdropBitmap, bool bGroupKnockout)
 
static std::unique_ptr< CFX_SkiaDeviceDriverCreate (SkCanvas *canvas)
 

Detailed Description

Definition at line 36 of file fx_skia_device.h.

Constructor & Destructor Documentation

◆ ~CFX_SkiaDeviceDriver()

CFX_SkiaDeviceDriver::~CFX_SkiaDeviceDriver ( )
override

Definition at line 744 of file fx_skia_device.cpp.

References SyncInternalBitmaps().

+ Here is the call graph for this function:

Member Function Documentation

◆ Clear()

void CFX_SkiaDeviceDriver::Clear ( uint32_t color)

Definition at line 1573 of file fx_skia_device.cpp.

◆ ContinueDIBits()

bool CFX_SkiaDeviceDriver::ContinueDIBits ( CFX_ImageRenderer * handle,
PauseIndicatorIface * pPause )
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 1456 of file fx_skia_device.cpp.

◆ Create() [1/2]

std::unique_ptr< CFX_SkiaDeviceDriver > CFX_SkiaDeviceDriver::Create ( RetainPtr< CFX_DIBitmap > pBitmap,
bool bRgbByteOrder,
RetainPtr< CFX_DIBitmap > pBackdropBitmap,
bool bGroupKnockout )
static

Definition at line 655 of file fx_skia_device.cpp.

◆ Create() [2/2]

std::unique_ptr< CFX_SkiaDeviceDriver > CFX_SkiaDeviceDriver::Create ( SkCanvas * canvas)
static

Definition at line 671 of file fx_skia_device.cpp.

◆ DrawBitsWithMask()

bool CFX_SkiaDeviceDriver::DrawBitsWithMask ( RetainPtr< const CFX_DIBBase > bitmap,
RetainPtr< const CFX_DIBBase > mask,
float alpha,
const CFX_Matrix & matrix,
BlendMode blend_type )

Definition at line 1492 of file fx_skia_device.cpp.

References CFX_FillRenderOptions::aliased_path.

Referenced by SetBitsWithMask().

+ Here is the caller graph for this function:

◆ DrawCosmeticLine()

bool CFX_SkiaDeviceDriver::DrawCosmeticLine ( const CFX_PointF & ptMoveTo,
const CFX_PointF & ptLineTo,
uint32_t color,
BlendMode blend_type )
overridevirtual

Draw a single pixel (device dependant) line

Reimplemented from RenderDeviceDriverIface.

Definition at line 1141 of file fx_skia_device.cpp.

◆ DrawDeviceText()

bool CFX_SkiaDeviceDriver::DrawDeviceText ( pdfium::span< const TextCharPos > pCharPos,
CFX_Font * pFont,
const CFX_Matrix & mtObject2Device,
float font_size,
uint32_t color,
const CFX_TextRenderOptions & options )
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 752 of file fx_skia_device.cpp.

References CFX_Font::GetSubstFontItalicAngle(), TextCharPos::m_AdjustMatrix, and TextCharPos::m_bGlyphAdjust.

+ Here is the call graph for this function:

◆ DrawPath()

bool CFX_SkiaDeviceDriver::DrawPath ( const CFX_Path & path,
const CFX_Matrix * pObject2Device,
const CFX_GraphStateData * pGraphState,
uint32_t fill_color,
uint32_t stroke_color,
const CFX_FillRenderOptions & fill_options,
BlendMode blend_type )
overridevirtual

Draw a path

Implements RenderDeviceDriverIface.

Definition at line 1072 of file fx_skia_device.cpp.

References CFX_GraphStateData::CFX_GraphStateData(), CFX_FillRenderOptions::aliased_path, CFX_FillRenderOptions::fill_type, CFX_FillRenderOptions::full_cover, and CFX_FillRenderOptions::kNoFill.

+ Here is the call graph for this function:

◆ DrawShading()

bool CFX_SkiaDeviceDriver::DrawShading ( const CPDF_ShadingPattern * pPattern,
const CFX_Matrix * pMatrix,
const FX_RECT & clip_rect,
int alpha,
bool bAlphaMode )
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 1162 of file fx_skia_device.cpp.

References CPDF_ShadingPattern::GetShadingType(), CPDF_MeshStream::IsEOF(), kAxialShading, kCoonsPatchMeshShading, CPDF_ColorSpace::kDeviceGray, CPDF_ColorSpace::kDeviceRGB, kRadialShading, CPDF_MeshStream::Load(), CPDF_MeshStream::ReadColor(), and CPDF_MeshStream::ReadFlag().

+ Here is the call graph for this function:

◆ Dump()

void CFX_SkiaDeviceDriver::Dump ( ) const

◆ FillRectWithBlend()

bool CFX_SkiaDeviceDriver::FillRectWithBlend ( const FX_RECT & rect,
uint32_t fill_color,
BlendMode blend_type )
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 1148 of file fx_skia_device.cpp.

◆ GetBackDrop()

RetainPtr< CFX_DIBitmap > CFX_SkiaDeviceDriver::GetBackDrop ( )
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 1389 of file fx_skia_device.cpp.

◆ GetClipBox()

bool CFX_SkiaDeviceDriver::GetClipBox ( FX_RECT * pRect)
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 1352 of file fx_skia_device.cpp.

References FX_RECT::bottom, FX_RECT::left, FX_RECT::right, and FX_RECT::top.

◆ GetDeviceCaps()

int CFX_SkiaDeviceDriver::GetDeviceCaps ( int caps_id) const
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 990 of file fx_skia_device.cpp.

Referenced by SetClip_PathFill().

+ Here is the caller graph for this function:

◆ GetDeviceType()

DeviceType CFX_SkiaDeviceDriver::GetDeviceType ( ) const
overridevirtual

Options

Implements RenderDeviceDriverIface.

Definition at line 986 of file fx_skia_device.cpp.

References kDisplay.

◆ GetDIBits()

bool CFX_SkiaDeviceDriver::GetDIBits ( const RetainPtr< CFX_DIBitmap > & pBitmap,
int left,
int top )
overridevirtual

Load device buffer into a DIB

Reimplemented from RenderDeviceDriverIface.

Definition at line 1361 of file fx_skia_device.cpp.

◆ GetDriverType()

int CFX_SkiaDeviceDriver::GetDriverType ( ) const
overridevirtual

Reimplemented from RenderDeviceDriverIface.

Definition at line 951 of file fx_skia_device.cpp.

◆ MultiplyAlpha()

bool CFX_SkiaDeviceDriver::MultiplyAlpha ( float alpha)
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 955 of file fx_skia_device.cpp.

◆ MultiplyAlphaMask()

bool CFX_SkiaDeviceDriver::MultiplyAlphaMask ( const RetainPtr< const CFX_DIBBase > & mask)
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 968 of file fx_skia_device.cpp.

◆ RestoreState()

void CFX_SkiaDeviceDriver::RestoreState ( bool bKeepSaved)
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 1014 of file fx_skia_device.cpp.

◆ SaveState()

void CFX_SkiaDeviceDriver::SaveState ( )
overridevirtual

Save and restore all graphic states

Implements RenderDeviceDriverIface.

Definition at line 1010 of file fx_skia_device.cpp.

◆ SetBitsWithMask()

bool CFX_SkiaDeviceDriver::SetBitsWithMask ( RetainPtr< const CFX_DIBBase > bitmap,
RetainPtr< const CFX_DIBBase > mask,
int dest_left,
int dest_top,
float alpha,
BlendMode blend_type )
override

Definition at line 1537 of file fx_skia_device.cpp.

References DrawBitsWithMask(), and CFX_RenderDevice::GetFlipMatrix().

+ Here is the call graph for this function:

◆ SetClip_PathFill()

bool CFX_SkiaDeviceDriver::SetClip_PathFill ( const CFX_Path & path,
const CFX_Matrix * pObject2Device,
const CFX_FillRenderOptions & fill_options )
overridevirtual

Set clipping path using filled region

Implements RenderDeviceDriverIface.

Definition at line 1021 of file fx_skia_device.cpp.

References CFX_FloatRect::CFX_FloatRect(), CFX_Matrix::CFX_Matrix(), FX_RECT::bottom, GetDeviceCaps(), CFX_FloatRect::GetOuterRect(), CFX_FloatRect::Intersect(), FX_RECT::left, FX_RECT::right, and FX_RECT::top.

+ Here is the call graph for this function:

◆ SetClip_PathStroke()

bool CFX_SkiaDeviceDriver::SetClip_PathStroke ( const CFX_Path & path,
const CFX_Matrix * pObject2Device,
const CFX_GraphStateData * pGraphState )
overridevirtual

Set clipping path using stroked region

Reimplemented from RenderDeviceDriverIface.

Definition at line 1054 of file fx_skia_device.cpp.

References CFX_FillRenderOptions::CFX_FillRenderOptions().

+ Here is the call graph for this function:

◆ SetDIBits()

bool CFX_SkiaDeviceDriver::SetDIBits ( const RetainPtr< const CFX_DIBBase > & pBitmap,
uint32_t color,
const FX_RECT & src_rect,
int dest_left,
int dest_top,
BlendMode blend_type )
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 1393 of file fx_skia_device.cpp.

References FXDIB_ResampleOptions::bNoSmoothing.

◆ SetGroupKnockout()

void CFX_SkiaDeviceDriver::SetGroupKnockout ( bool group_knockout)
override

Definition at line 1553 of file fx_skia_device.cpp.

◆ StartDIBits()

bool CFX_SkiaDeviceDriver::StartDIBits ( RetainPtr< const CFX_DIBBase > bitmap,
float alpha,
uint32_t color,
const CFX_Matrix & matrix,
const FXDIB_ResampleOptions & options,
std::unique_ptr< CFX_ImageRenderer > * handle,
BlendMode blend_type )
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 1443 of file fx_skia_device.cpp.

◆ StretchDIBits()

bool CFX_SkiaDeviceDriver::StretchDIBits ( RetainPtr< const CFX_DIBBase > bitmap,
uint32_t color,
int dest_left,
int dest_top,
int dest_width,
int dest_height,
const FX_RECT * pClipRect,
const FXDIB_ResampleOptions & options,
BlendMode blend_type )
overridevirtual

Implements RenderDeviceDriverIface.

Definition at line 1415 of file fx_skia_device.cpp.

References FXDIB_ResampleOptions::bNoSmoothing, and CFX_RenderDevice::GetFlipMatrix().

+ Here is the call graph for this function:

◆ SyncInternalBitmaps()

bool CFX_SkiaDeviceDriver::SyncInternalBitmaps ( )
override

Definition at line 1557 of file fx_skia_device.cpp.

Referenced by ~CFX_SkiaDeviceDriver().

+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: