35 using namespace ::
cairo;
41 mpSurfaceProvider( nullptr ),
42 mpRefDevice( nullptr ),
59 implInit(rSurfaceProvider, rRefDevice);
80 "device size " << rSize.getX() <<
" x " << rSize.getY());
97 rSize.getX(), rSize.getY() );
127 const uno::Reference< rendering::XGraphicDevice >& ,
128 const uno::Sequence< uno::Sequence< geometry::RealPoint2D > >& points )
132 return uno::Reference< rendering::XLinePolyPolygon2D >();
134 return uno::Reference< rendering::XLinePolyPolygon2D >(
135 new ::basegfx::unotools::UnoPolyPolygon(
140 const uno::Reference< rendering::XGraphicDevice >& ,
141 const uno::Sequence< uno::Sequence< geometry::RealBezierSegment2D > >& points )
145 return uno::Reference< rendering::XBezierPolyPolygon2D >();
147 return uno::Reference< rendering::XBezierPolyPolygon2D >(
148 new ::basegfx::unotools::UnoPolyPolygon(
153 const uno::Reference< rendering::XGraphicDevice >& rDevice,
154 const geometry::IntegerSize2D& size )
158 return uno::Reference< rendering::XBitmap >();
160 return uno::Reference< rendering::XBitmap >(
169 const uno::Reference< rendering::XGraphicDevice >& ,
170 const geometry::IntegerSize2D& )
172 return uno::Reference< rendering::XVolatileBitmap >();
176 const uno::Reference< rendering::XGraphicDevice >& rDevice,
177 const geometry::IntegerSize2D& size )
181 return uno::Reference< rendering::XBitmap >();
183 return uno::Reference< rendering::XBitmap >(
192 const uno::Reference< rendering::XGraphicDevice >& ,
193 const geometry::IntegerSize2D& )
195 return uno::Reference< rendering::XVolatileBitmap >();
200 return css::uno::Any(
false);
215 struct DeviceColorSpace:
public rtl::StaticWithInit<uno::Reference<rendering::XColorSpace>,
218 uno::Reference<rendering::XColorSpace> operator()()
228 return DeviceColorSpace::get();
233 static sal_Int32 nFilePostfixCount(0);
238 OUString aFilename =
"dbg_frontbuffer" + OUString::number(nFilePostfixCount) +
".bmp";
240 SvFileStream aStream( aFilename, StreamMode::STD_READWRITE );
242 const ::Point aEmptyPoint;
246 WriteDIB(aTempBitmap, aStream,
false);
255 return mpSurface->getSimilar( aContent, rSize.getX(), rSize.getY() );
Target interface for XCachedPrimitive implementations.
bool IsMapModeEnabled() const
css::uno::Reference< css::rendering::XVolatileBitmap > createVolatileAlphaBitmap(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::geometry::IntegerSize2D &size)
tools::Long GetOutOffXPixel() const
cairo::SurfaceSharedPtr CreateSurface(const cairo::CairoSurfaceSharedPtr &rSurface) const
css::uno::Any getSurfaceHandle() const
const MapMode & GetMapMode() const
css::uno::Reference< css::rendering::XLinePolyPolygon2D > createCompatibleLinePolyPolygon(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::uno::Sequence< css::uno::Sequence< css::geometry::RealPoint2D > > &points)
cairo::SurfaceSharedPtr CreateBitmapSurface(const BitmapSystemData &rData, const Size &rSize) const
void disposing()
Dispose all internal references.
void EnableMapMode(bool bEnable=true)
css::uno::Reference< css::rendering::XVolatileBitmap > createVolatileBitmap(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::geometry::IntegerSize2D &size)
void init(SurfaceProvider &rSurfaceProvider, OutputDevice &rRefDevice)
init helper
std::shared_ptr< Surface > SurfaceSharedPtr
css::geometry::RealSize2D getPhysicalResolution()
void setSize(const ::basegfx::B2ISize &rSize)
css::uno::Reference< css::rendering::XBitmap > createCompatibleAlphaBitmap(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::geometry::IntegerSize2D &size)
tools::Long GetOutputHeightPixel() const
css::uno::Any isAccelerated() const
Size GetOutputSizePixel() const
css::uno::Any getDeviceHandle() const
VclPtr< OutputDevice > mpRefDevice
tools::Long GetOutOffYPixel() const
Point PixelToLogic(const Point &rDevicePt) const
Point LogicToPixel(const Point &rLogicPt) const
::cairo::SurfaceSharedPtr createSurface(const ::basegfx::B2ISize &rSize, int aContent)
void implInit(SurfaceProvider &rSurfaceProvider, OutputDevice &rRefDevice)
init helper
::cairo::SurfaceSharedPtr mpSurface
SurfaceProvider * mpSurfaceProvider
Surface provider.
css::geometry::RealSize2D getPhysicalSize()
#define SAL_INFO(area, stream)
css::uno::Reference< css::rendering::XBitmap > createCompatibleBitmap(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::geometry::IntegerSize2D &size)
::rtl::Reference< SurfaceProvider > SurfaceProviderRef
css::uno::Reference< css::rendering::XBezierPolyPolygon2D > createCompatibleBezierPolyPolygon(const css::uno::Reference< css::rendering::XGraphicDevice > &rDevice, const css::uno::Sequence< css::uno::Sequence< css::geometry::RealBezierSegment2D > > &points)
css::uno::Reference< css::rendering::XColorSpace > const & getColorSpace() const
BitmapEx GetBitmapEx(const Point &rSrcPt, const Size &rSize) const
OutputDevice * get() const
void dumpScreenContent() const
called when DumpScreenContent property is enabled on XGraphicDevice, and writes out bitmaps of curren...
OutputDevice * getOutputDevice() const
tools::Long GetOutputWidthPixel() const
COMReference< surface_type > mpSurface