25#include <config_cairo_canvas.h>
35class PhysicalFontFace;
36class PhysicalFontCollection;
39namespace psp {
struct JobData;
class PrinterGfx; }
68 std::vector< sal_Int32 >& rWidths,
78 return m_pBackend.get();
81 virtual void GetResolution( sal_Int32& rDPIX, sal_Int32& rDPIY )
override;
92 const OUString& rFileURL,
93 const OUString& rFontName )
override;
95 std::u16string_view rFileURL,
96 const OUString& rFontName);
109 std::vector< sal_Int32 >& rWidths,
111 virtual std::unique_ptr<GenericSalLayout>
117#if ENABLE_CAIRO_CANVAS
118 virtual bool SupportsCairo()
const override;
virtual void ClearDevFontCache() override
psp::JobData * m_pJobData
static FontAttributes Info2FontAttributes(const psp::FastPrintFontInfo &)
virtual SalGraphicsImpl * GetImpl() const override
virtual FontCharMapRef GetFontCharMap() const override
virtual void SetFont(LogicalFontInstance *, int nFallbackLevel) override
static bool AddTempDevFontHelper(vcl::font::PhysicalFontCollection *pFontCollection, std::u16string_view rFileURL, const OUString &rFontName)
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override
virtual void DrawTextLayout(const GenericSalLayout &) override
virtual void SetTextColor(Color nColor) override
virtual void GetDevFontList(vcl::font::PhysicalFontCollection *) override
virtual bool AddTempDevFont(vcl::font::PhysicalFontCollection *, const OUString &rFileURL, const OUString &rFontName) override
static void DoFreeEmbedFontData(const void *pData, tools::Long nLen)
virtual bool CreateFontSubset(const OUString &rToFile, const vcl::font::PhysicalFontFace *, const sal_GlyphId *pGlyphIDs, const sal_uInt8 *pEncoding, sal_Int32 *pWidths, int nGlyphs, FontSubsetInfo &rInfo) override
static const void * DoGetEmbedFontData(psp::fontID aFont, tools::Long *pDataLen)
virtual void GetResolution(sal_Int32 &rDPIX, sal_Int32 &rDPIY) override
virtual void FreeEmbedFontData(const void *pData, tools::Long nDataLen) override
psp::PrinterGfx * m_pPrinterGfx
static void AnnounceFonts(vcl::font::PhysicalFontCollection *, const psp::FastPrintFontInfo &)
std::unique_ptr< GenPspGfxBackend > m_pBackend
virtual const void * GetEmbedFontData(const vcl::font::PhysicalFontFace *, tools::Long *pDataLen) override
virtual SystemGraphicsData GetGraphicsData() const override
virtual std::unique_ptr< GenericSalLayout > GetTextLayout(int nFallbackLevel) override
virtual ~GenPspGraphics() override
void Init(psp::JobData *pJob, psp::PrinterGfx *pGfx)
static void DoGetGlyphWidths(psp::fontID aFont, bool bVertical, std::vector< sal_Int32 > &rWidths, Ucs2UIntMap &rUnicodeEnc)
virtual void GetGlyphWidths(const vcl::font::PhysicalFontFace *, bool bVertical, std::vector< sal_Int32 > &rWidths, Ucs2UIntMap &rUnicodeEnc) override
virtual void GetFontMetric(ImplFontMetricDataRef &, int nFallbackLevel) override
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
Implementation class for SalGraphics.
abstract base class for physical font faces
std::shared_ptr< Surface > SurfaceSharedPtr
std::shared_ptr< cairo_surface_t > CairoSurfaceSharedPtr
A PhysicalFontFaceCollection is created by a PhysicalFontCollection and becomes invalid when original...
std::map< sal_Ucs, sal_uInt32 > Ucs2UIntMap