22#include <kiwano/core/BinaryData.h>
23#include <kiwano/render/DirectX/helper.h>
34interface DWRITE_DECLARE_INTERFACE("7EC7A55A-1964-4098-83E0-EFA7C12C6EF7") IFontFileCollectionLoader
35 :
public IDWriteFontCollectionLoader
38 static HRESULT Create(_Out_ IFontFileCollectionLoader * *ppCollectionLoader);
40 STDMETHOD(AddFilePaths)
41 (
const Vector<String>& filePaths, _Out_ LPVOID* pCollectionKey, _Out_ uint32_t* pCollectionKeySize) PURE;
44interface DWRITE_DECLARE_INTERFACE("0A1A3F2A-85F2-41BB-80FD-EC01271740C4") IFontFileEnumerator
45 :
public IDWriteFontFileEnumerator
48 static HRESULT Create(_Out_ IFontFileEnumerator * *ppEnumerator, IDWriteFactory * pFactory);
50 STDMETHOD(SetFilePaths)(
const Vector<String>& filePaths) PURE;
55interface DWRITE_DECLARE_INTERFACE("08D21408-6FC1-4E36-A4EB-4DA16BE3399E") IFontResourceLoader
56 :
public IDWriteFontFileLoader
59 static HRESULT Create(_Out_ IFontResourceLoader * *ppResLoader);
62interface DWRITE_DECLARE_INTERFACE("F2C411F0-2FB0-4D0E-8C73-D2B8F30137A4") IFontResourceCollectionLoader
63 :
public IDWriteFontCollectionLoader
66 static HRESULT Create(_Out_ IFontResourceCollectionLoader * *ppCollectionLoader, IFontResourceLoader * pResLoader);
68 STDMETHOD(AddResources)
69 (
const Vector<BinaryData>& data, _Out_ LPVOID* pCollectionKey, _Out_ uint32_t* pCollectionKeySize) PURE;
72interface DWRITE_DECLARE_INTERFACE("0AD0EC74-7503-46E8-8899-520175ECCB4A") IFontResourceEnumerator
73 :
public IDWriteFontFileEnumerator
76 static HRESULT Create(_Out_ IFontResourceEnumerator * *ppEnumerator, IDWriteFactory * pFactory,
77 IFontResourceLoader * pResLoader);
79 STDMETHOD(SetResources)(
const Vector<BinaryData>& data) PURE;
82interface DWRITE_DECLARE_INTERFACE("A6267450-27F3-4948-995F-FF8345A72F88") IFontResourceStream
83 :
public IDWriteFontFileStream
86 static HRESULT Create(_Out_ IFontResourceStream * *ppStream,
const BinaryData& data);