From 9e0c9d3499bc50c3534b4dc500d8b5d0b5f22752 Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 15 May 2022 13:56:40 +0800 Subject: ... --- include/cru/platform/graphics/direct2d/Font.h | 35 +++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 include/cru/platform/graphics/direct2d/Font.h (limited to 'include/cru/platform/graphics/direct2d/Font.h') diff --git a/include/cru/platform/graphics/direct2d/Font.h b/include/cru/platform/graphics/direct2d/Font.h new file mode 100644 index 00000000..841a57b5 --- /dev/null +++ b/include/cru/platform/graphics/direct2d/Font.h @@ -0,0 +1,35 @@ +#pragma once +#include "ComResource.h" +#include "Resource.h" + +#include "cru/platform/graphics/Font.h" + +#include + +namespace cru::platform::graphics::direct2d { +class CRU_WIN_GRAPHICS_DIRECT_API DWriteFont + : public DirectGraphicsResource, + public virtual IFont, + public virtual IComResource { + public: + DWriteFont(DirectGraphicsFactory* factory, String font_family, + float font_size); + + CRU_DELETE_COPY(DWriteFont) + CRU_DELETE_MOVE(DWriteFont) + + ~DWriteFont() override = default; + + public: + IDWriteTextFormat* GetComInterface() const override { + return text_format_.Get(); + } + + String GetFontName() override; + float GetFontSize() override; + + private: + String font_family_; + Microsoft::WRL::ComPtr text_format_; +}; +} // namespace cru::platform::graphics::direct2d -- cgit v1.2.3