LibreOffice Module cppcanvas (master) 1
Functions
cppcanvas::internal::TransparencyGroupActionFactory Namespace Reference

Transparency group action. More...

Functions

std::shared_ptr< ActioncreateTransparencyGroupAction (std::unique_ptr< GDIMetaFile > &&rGroupMtf, std::optional< Gradient > &&rAlphaGradient, const ::basegfx::B2DPoint &rDstPoint, const ::basegfx::B2DVector &rDstSize, const CanvasSharedPtr &rCanvas, const OutDevState &rState)
 Create new transparency group action. More...
 

Detailed Description

Transparency group action.

This action groups a bunch of other actions, to be rendered with the given transparency setting against the background.

Creates encapsulated converters between GDIMetaFile and XCanvas. The Canvas argument is deliberately placed at the constructor, to force reconstruction of this object for a new canvas. This considerably eases internal state handling, since a lot of the internal state (e.g. fonts, text layout) is Canvas-dependent.

Function Documentation

◆ createTransparencyGroupAction()

std::shared_ptr< Action > cppcanvas::internal::TransparencyGroupActionFactory::createTransparencyGroupAction ( std::unique_ptr< GDIMetaFile > &&  rGroupMtf,
std::optional< Gradient > &&  rAlphaGradient,
const ::basegfx::B2DPoint rDstPoint,
const ::basegfx::B2DVector rDstSize,
const CanvasSharedPtr rCanvas,
const OutDevState rState 
)

Create new transparency group action.

Parameters
rGroupMtfMetafile that groups all actions to be rendered transparent.
rAlphaGradientVCL gradient, to be rendered into the action's alpha channel.
rDstPointLeft, top edge of destination, in current state coordinate system
rDstSizeSize of the transparency group object, in current state coordinate system.

Definition at line 456 of file transparencygroupaction.cxx.

Referenced by cppcanvas::internal::ImplRenderer::createActions().