22#include <kiwano/core/BinaryData.h>
23#include <kiwano/render/DirectX/helper.h>
31interface DWRITE_DECLARE_INTERFACE("7EC7A55A-1964-4098-83E0-EFA7C12C6EF7") IFontCollectionLoader
32 :
public IDWriteFontCollectionLoader
35 static HRESULT Create(_Out_ IFontCollectionLoader * *ppCollectionLoader);
37 STDMETHOD(AddFilePaths)
38 (
const Vector<String>& filePaths, _Out_ LPVOID* pCollectionKey, _Out_ uint32_t* pCollectionKeySize) PURE;
41interface DWRITE_DECLARE_INTERFACE("0A1A3F2A-85F2-41BB-80FD-EC01271740C4") IFontFileEnumerator
42 :
public IDWriteFontFileEnumerator
45 static HRESULT Create(_Out_ IFontFileEnumerator * *ppEnumerator, IDWriteFactory * pFactory);
47 STDMETHOD(SetFilePaths)(
const Vector<String>& filePaths) PURE;
50interface DWRITE_DECLARE_INTERFACE("F2C411F0-2FB0-4D0E-8C73-D2B8F30137A4") IResourceFontCollectionLoader
51 :
public IDWriteFontCollectionLoader
54 static HRESULT Create(_Out_ IResourceFontCollectionLoader * *ppCollectionLoader,
55 IDWriteFontFileLoader * pFileLoader);
57 STDMETHOD(AddResources)
58 (
const Vector<BinaryData>& data, _Out_ LPVOID* pCollectionKey, _Out_ uint32_t* pCollectionKeySize) PURE;
61interface DWRITE_DECLARE_INTERFACE("08D21408-6FC1-4E36-A4EB-4DA16BE3399E") IResourceFontFileLoader
62 :
public IDWriteFontFileLoader
65 static HRESULT Create(_Out_ IResourceFontFileLoader * *ppFileLoader);
68interface DWRITE_DECLARE_INTERFACE("0AD0EC74-7503-46E8-8899-520175ECCB4A") IResourceFontFileEnumerator
69 :
public IDWriteFontFileEnumerator
72 static HRESULT Create(_Out_ IResourceFontFileEnumerator * *ppEnumerator, IDWriteFactory * pFactory,
73 IDWriteFontFileLoader * pFileLoader);
75 STDMETHOD(SetResources)(
const Vector<BinaryData>& data) PURE;
78interface DWRITE_DECLARE_INTERFACE("A6267450-27F3-4948-995F-FF8345A72F88") IResourceFontFileStream
79 :
public IDWriteFontFileStream
82 static HRESULT Create(_Out_ IResourceFontFileStream * *ppStream,
const BinaryData& data);