10 #ifndef DWRITE_3_H_INCLUDED 11 #define DWRITE_3_H_INCLUDED 17 interface IDWriteFontFaceReference;
18 interface IDWriteFont3;
19 interface IDWriteFontFace3;
20 interface IDWriteFontSet;
21 interface IDWriteFontSetBuilder;
22 interface IDWriteFontCollection1;
23 interface IDWriteFontFamily1;
24 interface IDWriteStringList;
25 interface IDWriteFontDownloadQueue;
33 #ifndef DWRITE_E_REMOTEFONT 34 #define DWRITE_E_REMOTEFONT _HRESULT_TYPEDEF_(0x8898500DL) 41 #ifndef DWRITE_E_DOWNLOADCANCELLED 42 #define DWRITE_E_DOWNLOADCANCELLED _HRESULT_TYPEDEF_(0x8898500EL) 49 #ifndef DWRITE_E_DOWNLOADFAILED 50 #define DWRITE_E_DOWNLOADFAILED _HRESULT_TYPEDEF_(0x8898500FL) 57 #ifndef DWRITE_E_TOOMANYDOWNLOADS 58 #define DWRITE_E_TOOMANYDOWNLOADS _HRESULT_TYPEDEF_(0x88985010L) 345 interface DWRITE_DECLARE_INTERFACE("B7924BAA-391
B-412
A-8C5C-E44CC2D867DC") IDWriteRenderingParams3 :
public IDWriteRenderingParams2
376 STDMETHOD(CreateGlyphRunAnalysis)(
383 FLOAT baselineOriginX,
384 FLOAT baselineOriginY,
385 _COM_Outptr_ IDWriteGlyphRunAnalysis** glyphRunAnalysis
388 using IDWriteFactory::CreateGlyphRunAnalysis;
389 using IDWriteFactory2::CreateGlyphRunAnalysis;
405 STDMETHOD(CreateCustomRenderingParams)(
407 FLOAT enhancedContrast,
408 FLOAT grayscaleEnhancedContrast,
409 FLOAT clearTypeLevel,
413 _COM_Outptr_ IDWriteRenderingParams3** renderingParams
416 using IDWriteFactory::CreateCustomRenderingParams;
417 using IDWriteFactory1::CreateCustomRenderingParams;
418 using IDWriteFactory2::CreateCustomRenderingParams;
436 STDMETHOD(CreateFontFaceReference)(
437 _In_z_ WCHAR
const* filePath,
438 _In_opt_ FILETIME
const* lastWriteTime,
441 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
455 STDMETHOD(CreateFontFaceReference)(
456 _In_ IDWriteFontFile* fontFile,
459 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
469 STDMETHOD(GetSystemFontSet)(
470 _COM_Outptr_ IDWriteFontSet** fontSet
481 STDMETHOD(CreateFontSetBuilder)(
482 _COM_Outptr_ IDWriteFontSetBuilder** fontSetBuilder
494 STDMETHOD(CreateFontCollectionFromFontSet)(
495 IDWriteFontSet* fontSet,
496 _COM_Outptr_ IDWriteFontCollection1** fontCollection
512 STDMETHOD(GetSystemFontCollection)(
513 BOOL includeDownloadableFonts,
514 _COM_Outptr_ IDWriteFontCollection1** fontCollection,
518 using IDWriteFactory::GetSystemFontCollection;
527 STDMETHOD(GetFontDownloadQueue)(
528 _COM_Outptr_ IDWriteFontDownloadQueue** fontDownloadQueue
546 STDMETHOD_(
UINT32, GetFontCount)() PURE;
556 STDMETHOD(GetFontFaceReference)(
558 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
570 STDMETHOD(FindFontFaceReference)(
571 IDWriteFontFaceReference* fontFaceReference,
585 STDMETHOD(FindFontFace)(
601 STDMETHOD(GetPropertyValues)(
605 _COM_Outptr_result_maybenull_ IDWriteLocalizedStrings**
values 628 STDMETHOD(GetPropertyValues)(
630 _In_z_ WCHAR
const* preferredLocaleNames,
631 _COM_Outptr_ IDWriteStringList**
values 648 STDMETHOD(GetPropertyValues)(
650 _COM_Outptr_ IDWriteStringList**
values 665 STDMETHOD(GetPropertyOccurrenceCount)(
667 _Out_
UINT32* propertyOccurrenceCount
685 STDMETHOD(GetMatchingFonts)(
688 _COM_Outptr_ IDWriteFontSet** filteredSet
708 STDMETHOD(GetMatchingFonts)(
709 _In_z_ WCHAR
const* familyName,
713 _COM_Outptr_ IDWriteFontSet** filteredSet
732 STDMETHOD(AddFontFaceReference)(
733 _In_ IDWriteFontFaceReference* fontFaceReference
754 STDMETHOD(AddFontFaceReference)(
755 _In_ IDWriteFontFaceReference* fontFaceReference,
768 STDMETHOD(AddFontSet)(
769 _In_ IDWriteFontSet* fontSet
785 STDMETHOD(CreateFontSet)(
786 _COM_Outptr_ IDWriteFontSet** fontSet
791 interface DWRITE_DECLARE_INTERFACE("53585141-D9F8-4095-8321-D73CF6BD116C") IDWriteFontCollection1 :
public IDWriteFontCollection
800 STDMETHOD(GetFontSet)(
801 _COM_Outptr_ IDWriteFontSet** fontSet
812 STDMETHOD(GetFontFamily)(
814 _COM_Outptr_ IDWriteFontFamily1** fontFamily
817 using IDWriteFontCollection::GetFontFamily;
854 _COM_Outptr_ IDWriteFont3**
font 857 using IDWriteFontFamily::GetFont;
867 STDMETHOD(GetFontFaceReference)(
869 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
906 _COM_Outptr_ IDWriteFont3**
font 909 using IDWriteFontList::GetFont;
919 STDMETHOD(GetFontFaceReference)(
921 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
945 STDMETHOD(CreateFontFace)(
946 _COM_Outptr_ IDWriteFontFace3** fontFace
961 STDMETHOD(CreateFontFaceWithSimulations)(
963 _COM_Outptr_ IDWriteFontFace3** fontFace
969 STDMETHOD_(
BOOL, Equals)(IDWriteFontFaceReference* fontFaceReference) PURE;
975 STDMETHOD_(
UINT32, GetFontFaceIndex)() PURE;
985 STDMETHOD(GetFontFile)(
986 _COM_Outptr_ IDWriteFontFile** fontFile
1001 STDMETHOD_(
UINT64, GetLocalFileSize)() PURE;
1011 STDMETHOD_(
UINT64, GetFileSize)() PURE;
1019 STDMETHOD(GetFileTime)(_Out_ FILETIME* lastWriteTime) PURE;
1036 STDMETHOD(EnqueueFontDownloadRequest)() PURE;
1050 STDMETHOD(EnqueueCharacterDownloadRequest)(
1051 _In_reads_(characterCount) WCHAR
const* characters,
1067 STDMETHOD(EnqueueGlyphDownloadRequest)(
1068 _In_reads_(glyphCount)
UINT16 const* glyphIndices,
1080 STDMETHOD(EnqueueFileFragmentDownloadRequest)(
1099 STDMETHOD(CreateFontFace)(
1100 _COM_Outptr_ IDWriteFontFace3** fontFace
1103 using IDWriteFont::CreateFontFace;
1108 STDMETHOD_(
BOOL, Equals)(IDWriteFont*
font) PURE;
1117 STDMETHOD(GetFontFaceReference)(
1118 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
1128 STDMETHOD_(
BOOL, HasCharacter)(
1132 using IDWriteFont::HasCharacter;
1154 interface DWRITE_DECLARE_INTERFACE("D37D7598-09BE-4222-A236-2081341CC1F2") IDWriteFontFace3 :
public IDWriteFontFace2
1163 STDMETHOD(GetFontFaceReference)(
1164 _COM_Outptr_ IDWriteFontFaceReference** fontFaceReference
1177 STDMETHOD_(
void, GetPanose)(
1203 STDMETHOD(GetFamilyNames)(
1204 _COM_Outptr_ IDWriteLocalizedStrings**
names 1214 STDMETHOD(GetFaceNames)(
1215 _COM_Outptr_ IDWriteLocalizedStrings**
names 1228 STDMETHOD(GetInformationalStrings)(
1230 _COM_Outptr_result_maybenull_ IDWriteLocalizedStrings** informationalStrings,
1241 STDMETHOD_(
BOOL, HasCharacter)(
1270 STDMETHOD(GetRecommendedRenderingMode)(
1283 using IDWriteFontFace2::GetRecommendedRenderingMode;
1293 STDMETHOD_(
BOOL, IsCharacterLocal)(
1304 STDMETHOD_(
BOOL, IsGlyphLocal)(
1320 STDMETHOD(AreCharactersLocal)(
1321 _In_reads_(characterCount) WCHAR
const* characters,
1323 BOOL enqueueIfNotLocal,
1339 STDMETHOD(AreGlyphsLocal)(
1340 _In_reads_(glyphCount)
UINT16 const* glyphIndices,
1342 BOOL enqueueIfNotLocal,
1362 STDMETHOD_(
UINT32, GetCount)() PURE;
1372 STDMETHOD(GetLocaleNameLength)(
1387 STDMETHOD(GetLocaleName)(
1389 _Out_writes_z_(
size) WCHAR* localeName,
1401 STDMETHOD(GetStringLength)(
1416 STDMETHOD(GetString)(
1418 _Out_writes_z_(stringBufferSize) WCHAR* stringBuffer,
1430 interface DWRITE_DECLARE_INTERFACE("B06FE5B9-43EC-4393-881
B-DBE4DC72FDA7") IDWriteFontDownloadListener :
public IUnknown
1442 STDMETHOD_(
void, DownloadCompleted)(
1443 _In_ IDWriteFontDownloadQueue* downloadQueue,
1444 _In_opt_ IUnknown* context,
1456 interface DWRITE_DECLARE_INTERFACE("B71E6052-5AEA-4FA3-832E-F60D431F7E91") IDWriteFontDownloadQueue :
public IUnknown
1473 STDMETHOD(AddListener)(
1474 IDWriteFontDownloadListener* listener,
1487 STDMETHOD(RemoveListener)(
1499 STDMETHOD_(
BOOL, IsEmpty)() PURE;
1521 STDMETHOD(BeginDownload)(
1522 _In_opt_ IUnknown* context = nullptr
1534 STDMETHOD(CancelDownload)() PURE;
1545 STDMETHOD_(
UINT64, GetGenerationCount)() PURE;
1552 interface DWRITE_DECLARE_INTERFACE("4556BE70-3ABD-4F70-90BE-421780A6F515") IDWriteGdiInterop1 :
public IDWriteGdiInterop
1572 STDMETHOD(CreateFontFromLOGFONT)(
1573 _In_ LOGFONTW
const* logFont,
1574 _In_opt_ IDWriteFontCollection* fontCollection,
1575 _COM_Outptr_ IDWriteFont**
font 1586 STDMETHOD(GetFontSignature)(
1587 _In_ IDWriteFont*
font,
1588 _Out_ FONTSIGNATURE* fontSignature
1599 STDMETHOD(GetFontSignature)(
1601 _Out_ FONTSIGNATURE* fontSignature
1611 STDMETHOD(GetMatchingFontsByLOGFONT)(
1612 _In_ LOGFONT
const* logFont,
1613 _In_ IDWriteFontSet* fontSet,
1614 _COM_Outptr_ IDWriteFontSet** filteredSet
1617 using IDWriteGdiInterop::CreateFontFromLOGFONT;
1705 interface DWRITE_DECLARE_INTERFACE("F67E0EDD-9E3D-4ECC-8C32-4183253DFE70") IDWriteTextFormat2 :
public IDWriteTextFormat1
1725 using IDWriteTextFormat1::SetLineSpacing;
1726 using IDWriteTextFormat1::GetLineSpacing;
1729 interface DWRITE_DECLARE_INTERFACE("07DDCD52-020E-4DE8-AC33-6C953D83F92D") IDWriteTextLayout3 :
public IDWriteTextLayout2
1740 STDMETHOD(InvalidateLayout)() PURE;
1776 STDMETHOD(GetLineMetrics)(
1779 _Out_
UINT32* actualLineCount
1782 using IDWriteTextLayout2::SetLineSpacing;
1783 using IDWriteTextLayout2::GetLineSpacing;
1784 using IDWriteTextLayout2::GetLineMetrics;
1791 #if NTDDI_VERSION >= NTDDI_WIN10_RS1 1875 interface DWRITE_DECLARE_INTERFACE("7C5F86DA-C7A1-4F05-B8E1-55A179FE5A35") IDWriteColorGlyphRunEnumerator1 :
public IDWriteColorGlyphRunEnumerator
1888 STDMETHOD(GetCurrentRun)(
1892 using IDWriteColorGlyphRunEnumerator::GetCurrentRun;
1901 interface DWRITE_DECLARE_INTERFACE("27F2A904-4EB8-441D-9678-0563F53E3E2F") IDWriteFontFace4 :
public IDWriteFontFace3
1917 STDMETHOD(GetGlyphImageFormats)(
1944 STDMETHOD(GetGlyphImageData)(
1949 _Outptr_result_maybenull_
void** glyphDataContext
1956 STDMETHOD_(
void, ReleaseGlyphImageData)(
1957 void* glyphDataContext
1962 interface DWRITE_DECLARE_INTERFACE("4B0B5BD3-0797-4549-8AC5-FE915CC53856") IDWriteFactory4 :
public IDWriteFactory3
1996 STDMETHOD(TranslateColorGlyphRun)(
2003 UINT32 colorPaletteIndex,
2004 _COM_Outptr_ IDWriteColorGlyphRunEnumerator1** colorLayers
2007 using IDWriteFactory2::TranslateColorGlyphRun;
2020 STDMETHOD(ComputeGlyphOrigins)(
2032 STDMETHOD(ComputeGlyphOrigins)(
2035 _Out_writes_(glyphRun->glyphCount)
D2D1_POINT_2F* glyphOrigins
2039 #endif // NTDDI_VERSION >= NTDDI_WIN10_RS1 2045 #if NTDDI_VERSION >= NTDDI_WIN10_RS2 2047 interface DWRITE_DECLARE_INTERFACE("3FF7715F-3CDC-4DC6-9B72-EC5621DCCAFD") IDWriteFontSetBuilder1 :
public IDWriteFontSetBuilder
2057 STDMETHOD(AddFontFile)(
2058 _In_ IDWriteFontFile* fontFile
2074 STDMETHOD_(HANDLE, GetWaitHandle)() PURE;
2080 STDMETHOD(GetResult)() PURE;
2110 interface DWRITE_DECLARE_INTERFACE("4DB3757A-2C72-4ED9-B2B6-1ABABE1AFF9C") IDWriteRemoteFontFileStream :
public IDWriteFontFileStream
2123 STDMETHOD(GetLocalFileSize)(
2124 _Out_
UINT64* localFileSize
2139 STDMETHOD(GetFileFragmentLocality)(
2142 _Out_
BOOL* isLocal,
2143 _Out_range_(0, fragmentSize)
UINT64* partialSize
2169 STDMETHOD(BeginDownload)(
2170 _In_ UUID
const* downloadOperationID,
2173 _COM_Outptr_result_maybenull_ IDWriteAsyncResult** asyncResult
2202 interface DWRITE_DECLARE_INTERFACE("68648C83-6EDE-46C0-AB46-20083A887FDE") IDWriteRemoteFontFileLoader :
public IDWriteFontFileLoader
2221 STDMETHOD(CreateRemoteStreamFromKey)(
2222 _In_reads_bytes_(fontFileReferenceKeySize)
void const* fontFileReferenceKey,
2223 UINT32 fontFileReferenceKeySize,
2224 _COM_Outptr_ IDWriteRemoteFontFileStream** fontFileStream
2237 STDMETHOD(GetLocalityFromKey)(
2238 _In_reads_bytes_(fontFileReferenceKeySize)
void const* fontFileReferenceKey,
2239 UINT32 fontFileReferenceKeySize,
2255 STDMETHOD(CreateFontFileReferenceFromUrl)(
2257 _In_opt_z_ WCHAR
const* baseUrl,
2258 _In_z_ WCHAR
const* fontFileUrl,
2259 _COM_Outptr_ IDWriteFontFile** fontFile
2272 interface DWRITE_DECLARE_INTERFACE("DC102F47-A12D-4B1C-822D-9E117E33043F") IDWriteInMemoryFontFileLoader :
public IDWriteFontFileLoader
2294 STDMETHOD(CreateInMemoryFontFileReference)(
2296 _In_reads_bytes_(fontDataSize)
void const* fontData,
2298 _In_opt_ IUnknown* ownerObject,
2299 _COM_Outptr_ IDWriteFontFile** fontFile
2306 STDMETHOD_(
UINT32, GetFileCount)() PURE;
2323 STDMETHOD(CreateFontSetBuilder)(
2324 _COM_Outptr_ IDWriteFontSetBuilder1** fontSetBuilder
2327 using IDWriteFactory3::CreateFontSetBuilder;
2338 STDMETHOD(CreateInMemoryFontFileLoader)(
2339 _COM_Outptr_ IDWriteInMemoryFontFileLoader** newLoader
2356 STDMETHOD(CreateHttpFontFileLoader)(
2357 _In_opt_z_
wchar_t const* referrerUrl,
2358 _In_opt_z_
wchar_t const* extraHeaders,
2359 _COM_Outptr_ IDWriteRemoteFontFileLoader** newLoader
2371 _In_reads_bytes_(fileDataSize)
void const* fileData,
2388 STDMETHOD(UnpackFontFile)(
2390 _In_reads_bytes_(fileDataSize)
void const* fileData,
2392 _COM_Outptr_ IDWriteFontFileStream** unpackedFontStream
2396 #endif // NTDDI_VERSION >= NTDDI_WIN10_RS2 2402 #if NTDDI_VERSION >= NTDDI_WIN10_RS3 2406 interface IDWriteFontFace5;
2407 interface IDWriteFontFaceReference1;
2408 interface IDWriteFontSet1;
2409 interface IDWriteFontCollection2;
2410 interface IDWriteTextFormat3;
2411 interface IDWriteFontSetBuilder2;
2417 #define DWRITE_MAKE_FONT_AXIS_TAG(a,b,c,d) (static_cast<DWRITE_FONT_AXIS_TAG>(DWRITE_MAKE_OPENTYPE_TAG(a,b,c,d))) 2517 #ifdef DEFINE_ENUM_FLAG_OPERATORS 2550 #ifdef DEFINE_ENUM_FLAG_OPERATORS 2555 interface DWRITE_DECLARE_INTERFACE("F3744D80-21F7-42EB-B35D-995BC72FC223") IDWriteFactory6 :
public IDWriteFactory5
2570 STDMETHOD(CreateFontFaceReference)(
2571 _In_ IDWriteFontFile* fontFile,
2575 UINT32 fontAxisValueCount,
2576 _COM_Outptr_ IDWriteFontFaceReference1** fontFaceReference
2579 using IDWriteFactory5::CreateFontFaceReference;
2591 STDMETHOD(CreateFontResource)(
2592 _In_ IDWriteFontFile* fontFile,
2605 STDMETHOD(GetSystemFontSet)(
2606 BOOL includeDownloadableFonts,
2607 _COM_Outptr_ IDWriteFontSet1** fontSet
2610 using IDWriteFactory3::GetSystemFontSet;
2621 STDMETHOD(GetSystemFontCollection)(
2622 BOOL includeDownloadableFonts,
2624 _COM_Outptr_ IDWriteFontCollection2** fontCollection
2627 using IDWriteFactory::GetSystemFontCollection;
2628 using IDWriteFactory3::GetSystemFontCollection;
2639 STDMETHOD(CreateFontCollectionFromFontSet)(
2640 IDWriteFontSet* fontSet,
2642 _COM_Outptr_ IDWriteFontCollection2** fontCollection
2645 using IDWriteFactory5::CreateFontCollectionFromFontSet;
2654 STDMETHOD(CreateFontSetBuilder)(
2655 _COM_Outptr_ IDWriteFontSetBuilder2** fontSetBuilder
2658 using IDWriteFactory3::CreateFontSetBuilder;
2659 using IDWriteFactory5::CreateFontSetBuilder;
2678 STDMETHOD(CreateTextFormat)(
2679 _In_z_ WCHAR
const* fontFamilyName,
2680 _In_opt_ IDWriteFontCollection* fontCollection,
2682 UINT32 fontAxisValueCount,
2684 _In_z_ WCHAR
const* localeName,
2685 _COM_Outptr_ IDWriteTextFormat3** textFormat
2688 using IDWriteFactory::CreateTextFormat;
2697 STDMETHOD_(
UINT32, GetFontAxisValueCount)() PURE;
2711 STDMETHOD(GetFontAxisValues)(
2713 UINT32 fontAxisValueCount
2720 STDMETHOD_(
BOOL, HasVariations)() PURE;
2730 STDMETHOD(GetFontResource)(
2753 STDMETHOD(GetFontFile)(
2754 _COM_Outptr_ IDWriteFontFile** fontFile
2761 STDMETHOD_(
UINT32, GetFontFaceIndex)() PURE;
2766 STDMETHOD_(
UINT32, GetFontAxisCount)() PURE;
2781 STDMETHOD(GetDefaultFontAxisValues)(
2783 UINT32 fontAxisValueCount
2797 STDMETHOD(GetFontAxisRanges)(
2799 UINT32 fontAxisRangeCount
2827 STDMETHOD(GetAxisNames)(
2829 _COM_Outptr_ IDWriteLocalizedStrings**
names 2839 STDMETHOD_(
UINT32, GetAxisValueNameCount)(
2858 STDMETHOD(GetAxisValueNames)(
2862 _COM_Outptr_ IDWriteLocalizedStrings**
names 2869 STDMETHOD_(
BOOL, HasVariations)() PURE;
2886 STDMETHOD(CreateFontFace)(
2889 UINT32 fontAxisValueCount,
2890 _COM_Outptr_ IDWriteFontFace5** fontFace
2908 STDMETHOD(CreateFontFaceReference)(
2911 UINT32 fontAxisValueCount,
2912 _COM_Outptr_ IDWriteFontFaceReference1** fontFaceReference
2917 interface DWRITE_DECLARE_INTERFACE("C081FE77-2FD1-41AC-A5A3-34983C4BA61A") IDWriteFontFaceReference1 :
public IDWriteFontFaceReference
2929 STDMETHOD(CreateFontFace)(
2930 _COM_Outptr_ IDWriteFontFace5** fontFace
2933 using IDWriteFontFaceReference::CreateFontFace;
2938 STDMETHOD_(
UINT32, GetFontAxisValueCount)() PURE;
2948 STDMETHOD(GetFontAxisValues)(
2950 UINT32 fontAxisValueCount
2955 interface DWRITE_DECLARE_INTERFACE("EE5BA612-B131-463C-8F4F-3189B9401E45") IDWriteFontSetBuilder2 :
public IDWriteFontSetBuilder1
2978 _In_ IDWriteFontFile* fontFile,
2982 UINT32 fontAxisValueCount,
2984 UINT32 fontAxisRangeCount,
2997 STDMETHOD(AddFontFile)(
2998 _In_z_ WCHAR
const* filePath
3001 using IDWriteFontSetBuilder1::AddFontFile;
3022 STDMETHOD(GetMatchingFonts)(
3025 UINT32 fontAxisValueCount,
3026 _COM_Outptr_ IDWriteFontSet1** matchingFonts
3036 STDMETHOD(GetFirstFontResources)(
3037 _COM_Outptr_ IDWriteFontSet1** filteredFontSet
3054 STDMETHOD(GetFilteredFonts)(
3057 BOOL selectAnyProperty,
3058 _COM_Outptr_ IDWriteFontSet1** filteredFontSet
3075 STDMETHOD(GetFilteredFonts)(
3077 UINT32 fontAxisRangeCount,
3078 BOOL selectAnyRange,
3079 _COM_Outptr_ IDWriteFontSet1** filteredFontSet
3095 STDMETHOD(GetFilteredFonts)(
3098 _COM_Outptr_ IDWriteFontSet1** filteredFontSet
3114 STDMETHOD(GetFilteredFontIndices)(
3117 BOOL selectAnyProperty,
3120 _Out_
UINT32* actualIndexCount
3135 STDMETHOD(GetFilteredFontIndices)(
3137 UINT32 fontAxisRangeCount,
3138 BOOL selectAnyRange,
3141 _Out_
UINT32* actualIndexCount
3153 STDMETHOD(GetFontAxisRanges)(
3155 UINT32 maxFontAxisRangeCount,
3156 _Out_
UINT32* actualFontAxisRangeCount
3169 STDMETHOD(GetFontAxisRanges)(
3172 UINT32 maxFontAxisRangeCount,
3173 _Out_
UINT32* actualFontAxisRangeCount
3184 STDMETHOD(GetFontFaceReference)(
3186 _COM_Outptr_ IDWriteFontFaceReference1** fontFaceReference
3189 using IDWriteFontSet::GetFontFaceReference;
3199 STDMETHOD(CreateFontResource)(
3212 STDMETHOD(CreateFontFace)(
3214 _COM_Outptr_ IDWriteFontFace5** fontFace
3242 STDMETHOD(GetFontSet)(
3243 _COM_Outptr_ IDWriteFontSet1** fontSet
3248 interface DWRITE_DECLARE_INTERFACE("3ED49E77-A398-4261-B9CF-C126C2131EF3") IDWriteFontFamily2 :
public IDWriteFontFamily1
3259 STDMETHOD(GetMatchingFonts)(
3261 UINT32 fontAxisValueCount,
3262 _COM_Outptr_ IDWriteFontList2** matchingFonts
3265 using IDWriteFontFamily::GetMatchingFonts;
3274 STDMETHOD(GetFontSet)(
3275 _COM_Outptr_ IDWriteFontSet1** fontSet
3280 interface DWRITE_DECLARE_INTERFACE("514039C6-4617-4064-BF8B-92EA83E506E0") IDWriteFontCollection2 :
public IDWriteFontCollection1
3290 STDMETHOD(GetFontFamily)(
3292 _COM_Outptr_ IDWriteFontFamily2** fontFamily
3295 using IDWriteFontCollection::GetFontFamily;
3296 using IDWriteFontCollection1::GetFontFamily;
3312 STDMETHOD(GetMatchingFonts)(
3313 _In_z_ WCHAR
const* familyName,
3315 UINT32 fontAxisValueCount,
3316 _COM_Outptr_ IDWriteFontList2** fontList
3334 STDMETHOD(GetFontSet)(
3335 _COM_Outptr_ IDWriteFontSet1** fontSet
3340 interface DWRITE_DECLARE_INTERFACE("05A9BF42-223
F-4441-B5FB-8263685F55E9") IDWriteTextLayout4 :
public IDWriteTextLayout3
3350 STDMETHOD(SetFontAxisValues)(
3352 UINT32 fontAxisValueCount,
3359 STDMETHOD_(
UINT32, GetFontAxisValueCount)(
3371 STDMETHOD(GetFontAxisValues)(
3374 UINT32 fontAxisValueCount,
3397 interface DWRITE_DECLARE_INTERFACE("6D3B5641-E550-430D-A85B-B7BF48A93427") IDWriteTextFormat3 :
public IDWriteTextFormat2
3407 STDMETHOD(SetFontAxisValues)(
3409 UINT32 fontAxisValueCount
3415 STDMETHOD_(
UINT32, GetFontAxisValueCount)() PURE;
3425 STDMETHOD(GetFontAxisValues)(
3427 UINT32 fontAxisValueCount
3449 interface DWRITE_DECLARE_INTERFACE("2397599D-DD0D-4681-BD6A-F4F31EAADE77") IDWriteFontFallback1 :
public IDWriteFontFallback
3471 STDMETHOD(MapCharacters)(
3472 IDWriteTextAnalysisSource* analysisSource,
3475 _In_opt_ IDWriteFontCollection* baseFontCollection,
3476 _In_opt_z_ WCHAR
const* baseFamilyName,
3478 UINT32 fontAxisValueCount,
3479 _Deref_out_range_(0, textLength)
UINT32* mappedLength,
3481 _COM_Outptr_ IDWriteFontFace5** mappedFontFace
3484 using IDWriteFontFallback::MapCharacters;
3487 #endif // NTDDI_VERSION >= NTDDI_WIN10_RS3 3489 #endif // DWRITE_3_H_INCLUDED struct nk_font * font
Definition: nk_common.c:40
Specifies that antialiasing is performed in the horizontal direction and the appearance of glyphs is ...
Definition: dwrite.h:921
D2D1_POINT_2L verticalTopOrigin
Top origin along the vertical central baseline.
Definition: dwrite_3.h:1863
The usage of the font line gap depends on the method used for text layout.
Definition: dwrite_3.h:1648
The interface that represents text rendering settings for glyph rasterization and filtering.
Definition: dwrite_3.h:1623
#define const
Definition: zconf.h:217
Specifies that antialiasing is performed in the horizontal direction and the appearance of glyphs is ...
Definition: dwrite_3.h:310
Specifies that antialiasing is performed in the horizontal direction and the appearance of glyphs is ...
Definition: dwrite.h:930
GLboolean GLenum GLenum GLvoid * values
Definition: glext.h:6318
Definition: glslang_tab.cpp:129
DWRITE_CONTAINER_TYPE
IDWriteRemoteFontFileStream represents a font file stream parts of which may be non-local....
Definition: dwrite_3.h:2183
Definition: dwrite_3.h:2186
Face name of the for the weight-stretch-style (e.g., Regular or Bold).
Definition: dwrite_3.h:85
DWRITE_FONT_PROPERTY_ID
The font property enumeration identifies a string in a font.
Definition: dwrite_3.h:64
Ιστορικό Εικόνα Πληροφορίες Όλοι Οι Χρήστες Χειρίζονται Το Μενού Αριστερό Αναλογικό Αριστερό Αναλογικό Αριστερό Αναλογικό Y Αριστερό Αναλογικό Δεξί Αναλογικό X Δεξί Αναλογικό Δεξί Αναλογικό Y Δεξί Αναλογικό Σκανδάλη Όπλου Όπλο Aux A Όπλο Aux C Όπλο Select Όπλο D pad Κάτω Όπλο D pad Δεξιά Νεκρή Ζώνη Αναλογικού Σύνδεση Όλων Λήξη Χρόνου Σύνδεσης Hide Unbound Core Input Descriptors Κατάλογος Συσκευών Κατάλογος Ποντικιού Duty Cycle Keyboard Gamepad Mapping Enable Κουμπί B(κάτω)" ) MSG_HASH( MENU_ENUM_LABEL_VALUE_INPUT_JOYPAD_DOWN
Value for a font axis, used when querying and creating font instances.
Definition: dwrite_3.h:2439
#define FALSE
Definition: stb_vorbis.h:232
UINT32 uniqueDataId
Unique identifier for the glyph data. Clients may use this to cache a parsed/decompressed version and...
Definition: dwrite_3.h:1836
uint64_t UINT64
Definition: coretypes.h:8
D2D_POINT_2L D2D1_POINT_2L
Definition: d2d1_1.h:58
GLsizeiptr size
Definition: glext.h:6559
The full name of the font, e.g. "Arial Bold", from name id 4 in the name table.
Definition: dwrite_3.h:90
Specifies that rendering should bypass the rasterizer and use the outlines directly....
Definition: dwrite.h:952
GLenum GLenum GLenum GLenum GLenum scale
Definition: glext.h:9939
Families are grouped by the weight-stretch-style family name, where all faces that differ only by tho...
Definition: dwrite_3.h:2495
FLOAT leadingBefore
Proportion of the entire leading distributed before the line. The allowed value is between 0 and 1....
Definition: dwrite_3.h:1697
DWRITE_FONT_LINE_GAP_USAGE
Specify whether DWRITE_FONT_METRICS::lineGap value should be part of the line metrics.
Definition: dwrite_3.h:1643
Typeface classification values, used for font selection and matching.
Definition: dwrite_1.h:752
typedef HRESULT(WINAPI *PFN_D3D12_SERIALIZE_ROOT_SIGNATURE)(_In_ const D3D12_ROOT_SIGNATURE_DESC *pRootSignature
interface DWRITE_DECLARE_INTERFACE("68648C83-6EDE-46C0-AB46-20083A887FDE") IDWriteRemoteFontFileLoader interface DWRITE_DECLARE_INTERFACE("DC102F47-A12D-4B1C-822D-9E117E33043F") IDWriteInMemoryFontFileLoader interface DWRITE_DECLARE_INTERFACE("958DB99A-BE2A-4F09-AF7D-65189803D1D3") IDWriteFactory5 interface IDWriteFontResource
The IDWriteRemoteFontFileLoader interface represents a font file loader that can access remote (i....
Definition: dwrite_3.h:2313
Family name for the weight-stretch-style model.
Definition: dwrite_3.h:74
DWRITE_LINE_SPACING_METHOD method
Method used to determine line spacing.
Definition: dwrite_3.h:1669
Specifies that antialiasing is performed in the horizontal direction. This rendering mode allows glyp...
Definition: dwrite_3.h:318
Definition: dwrite_3.h:2430
interface DWRITE_DECLARE_INTERFACE("cca920e4-52f0-492b-bfa8-29c72ee0a468") IDWriteFontCollectionLoader interface DWRITE_DECLARE_INTERFACE("72755049-5ff7-435d-8348-4be97cfa6c7c") IDWriteFontFileEnumerator interface DWRITE_DECLARE_INTERFACE("08256209-099a-4b34-b86d-c22b110e7771") IDWriteLocalizedStrings interface IDWriteFontFamily
The font collection loader interface is used to construct a collection of fonts given a particular ty...
Definition: dwrite.h:1367
Style of the font represented as a decimal string in the range 0-2.
Definition: dwrite_3.h:194
Similar to natural symmetric mode except that when possible, text should be rasterized in a downsampl...
Definition: dwrite_3.h:338
Represents a color glyph run. The IDWriteFactory4::TranslateColorGlyphRun method returns an ordered c...
Definition: dwrite_3.h:1802
The DWRITE_LINE_METRICS structure contains information about a formatted line of text.
Definition: dwrite.h:3223
Definition: dwrite_3.h:218
DWRITE_GLYPH_IMAGE_FORMATS glyphImageFormat
Type of glyph image format for this color run. Exactly one type will be set since TranslateColorGlyph...
Definition: dwrite_3.h:1808
The DWRITE_TEXT_RANGE structure specifies a range of text positions where format is applied.
Definition: dwrite.h:1965
Font property used for filtering font sets and building a font set with explicit properties.
Definition: dwrite_3.h:226
The DWRITE_GLYPH_RUN_DESCRIPTION structure contains additional properties related to those in DWRITE_...
Definition: dwrite.h:3075
#define DWRITE_DECLARE_INTERFACE(iid)
Definition: dwrite.h:25
The font line gap is excluded from line spacing
Definition: dwrite_3.h:1653
DWRITE_GLYPH_IMAGE_FORMATS
Fonts may contain multiple drawable data formats for glyphs. These flags specify which formats are su...
Definition: dcommon.h:62
DWRITE_MEASURING_MODE measuringMode
Measuring mode to use for this glyph run.
Definition: dwrite_3.h:1813
Definition: dwrite_3.h:2432
Definition: dwrite_3.h:217
The font line gap is included in line spacing
Definition: dwrite_3.h:1658
FLOAT maxValue
Maximum value supported by this axis. The maximum can equal the minimum.
Definition: dwrite_3.h:2473
DWRITE_FONT_FAMILY_MODEL
How font families are grouped together, used by IDWriteFontCollection.
Definition: dwrite_3.h:2480
Enumerator for an ordered collection of color glyph runs.
Definition: dwrite_3.h:2087
#define DWRITE_MAKE_FONT_AXIS_TAG(a, b, c, d)
Creates an OpenType tag for a font axis.
Definition: dwrite_3.h:2417
Automatically pick an appropriate optical value based on the font size (via SetFontSize) when no valu...
Definition: dwrite_3.h:2514
DWRITE_OUTLINE_THRESHOLD
Specifies the policy used by GetRecommendedRenderingMode to determine whether to render glyphs in out...
Definition: dwrite_1.h:516
Specifies that antialiasing is performed in the horizontal direction and the appearance of glyphs is ...
Definition: dwrite_3.h:301
The DWRITE_LINE_SPACING structure specifies the parameters used to specify how to manage space betwee...
Definition: dwrite_3.h:1664
UINT32 glyphCount
The number of glyphs.
Definition: dwrite.h:3036
FLOAT baseline
Distance from top of line to baseline. The interpretation of this parameter depends upon the line spa...
Definition: dwrite_3.h:1689
The resource is completely local, and all font functions can be called without concern of missing dat...
Definition: dwrite_3.h:275
DWRITE_FONT_AXIS_TAG axisTag
Four character identifier of the font axis (weight, width, slant, italic...).
Definition: dwrite_3.h:2444
The IDWriteFont interface represents a physical font in a font collection.
Definition: dwrite_2.h:768
DWRITE_FONT_AXIS_ATTRIBUTES
Attributes for a font axis.
Definition: dwrite_3.h:2525
The interface implemented by the text analyzer's client to provide text to the analyzer....
Definition: dwrite.h:3021
DWRITE_LINE_SPACING_METHOD
The method used for line spacing in layout.
Definition: dwrite.h:1831
Semantic tag to describe the font (e.g. Fancy, Decorative, Handmade, Sans-serif, Swiss,...
Definition: dwrite_3.h:167
This axis is recommended to be remain hidden in user interfaces. The font developer may recommend thi...
Definition: dwrite_3.h:2547
DWRITE_RENDERING_MODE1
Represents a method of rendering glyphs.
Definition: dwrite_3.h:282
Families are grouped by the typographic family name preferred by the font author. The family can cont...
Definition: dwrite_3.h:2487
Weight of the font represented as a decimal string in the range 1-999.
Definition: dwrite_3.h:176
Definition: dwrite_3.h:2187
Definition: dwrite_3.h:216
GDI-compatible family name. Because GDI allows a maximum of four fonts per family,...
Definition: dwrite_3.h:96
Similar to natural mode except that antialiasing is performed in both the horizontal and vertical dir...
Definition: dwrite.h:946
Minimum and maximum range of a font axis.
Definition: dwrite_3.h:2458
Represents an x-coordinate and y-coordinate pair in two-dimensional space.
Definition: dcommon.h:175
DWRITE_FONT_SIMULATIONS
Specifies algorithmic style simulations to be applied to the font face. Bold and oblique simulations ...
Definition: dwrite.h:141
#define A(i)
Definition: ecp_curves.c:884
Data for a single glyph from GetGlyphImageData.
Definition: dwrite_3.h:1820
Total number of properties for NTDDI_WIN10_RS3 (IDWriteFontSet1).
Definition: dwrite_3.h:213
GLuint GLuint GLsizei GLenum const GLvoid * indices
Definition: glext.h:6292
DWRITE_AUTOMATIC_FONT_AXES
Apply certain axes automatically in layout during font selection.
Definition: dwrite_3.h:2502
interface IDWriteFontFace IDWriteFontFace
Definition: d2d1_3.h:31
#define F0(x, y, z)
Definition: sha256.c:166
UINT64 fragmentSize
Size of the file fragment, in bytes.
Definition: dwrite_3.h:2097
FLOAT height
Spacing between lines. The interpretation of this parameter depends upon the line spacing method,...
Definition: dwrite_3.h:1679
The DWRITE_MATRIX structure specifies the graphics transform to be applied to rendered glyphs.
Definition: dwrite.h:967
GLuint index
Definition: glext.h:6671
Specifies that no antialiasing is performed. Each pixel is either set to the foreground color of the ...
Definition: dwrite.h:913
D2D1_POINT_2L verticalBottomOrigin
Bottom origin along vertical central baseline.
Definition: dwrite_3.h:1868
DWRITE_INFORMATIONAL_STRING_ID
The informational string enumeration identifies a string in a font.
Definition: dwrite.h:344
FLOAT value
Value for the given axis, with the meaning and range depending on the axis semantics....
Definition: dwrite_3.h:2451
Specifies that the rendering mode is determined automatically based on the font and size.
Definition: dwrite_3.h:287
unsigned int BOOL
Definition: gctypes.h:51
DWRITE_PIXEL_GEOMETRY
Font file loader interface handles loading font file resources of a particular type from a key....
Definition: dwrite.h:877
Definition: dwrite_3.h:2429
_Field_z_ _Maybenull_ WCHAR const * localeName
Specifies the language / locale to use, such as "en-US".
Definition: dwrite_3.h:249
D2D1_POINT_2L horizontalRightOrigin
Right origin along the horizontal Roman baseline.
Definition: dwrite_3.h:1858
DWRITE_FONT_WEIGHT
The font weight enumeration describes common values for degree of blackness or thickness of strokes o...
Definition: dwrite.h:167
uint32_t UINT32
Definition: coretypes.h:10
Total number of properties for NTDDI_WIN10 (IDWriteFontSet).
Definition: dwrite_3.h:208
GLenum const GLvoid GLbitfield fontStyle
Definition: glext.h:12622
Specifies that rendering should bypass the rasterizer and use the outlines directly....
Definition: dwrite_3.h:332
GLuint GLuint * names
Definition: glext.h:12452
_Field_size_bytes_(imageDataSize) void const *imageData
Pointer to the glyph data, be it SVG, PNG, JPEG, TIFF.
D2D1_SIZE_U pixelSize
Size of image when the format is pixel data.
Definition: dwrite_3.h:1848
FLOAT minValue
Minimum value supported by this axis.
Definition: dwrite_3.h:2468
This axis is implemented as a variation axis in a variable font, with a continuous range of values,...
Definition: dwrite_3.h:2538
UINT64 fileOffset
Starting offset of the fragment from the beginning of the file.
Definition: dwrite_3.h:2092
No axes are automatically applied.
Definition: dwrite_3.h:2507
The resource is partially local, meaning you can query the size and date of the file stream,...
Definition: dwrite_3.h:269
DWRITE_FONT_AXIS_TAG
Four character identifier for a font axis.
Definition: dwrite_3.h:2426
FLOAT leadingBefore
White space before the content of the line. This is included in the line height and baseline distance...
Definition: dwrite_3.h:1630
The resource is remote, and information is unknown yet, including the file size and date....
Definition: dwrite_3.h:262
Definition: dwrite_3.h:2428
DWRITE_FONT_PROPERTY_ID propertyId
Specifies the requested font property, such as DWRITE_FONT_PROPERTY_ID_FAMILY_NAME.
Definition: dwrite_3.h:231
Stores an ordered pair of integers, typically the width and height of a rectangle.
Definition: dcommon.h:264
uint16_t UINT16
Definition: coretypes.h:11
interface IDWriteRenderingParams IDWriteRenderingParams
Definition: d2d1.h:52
Specifies that no antialiasing is performed. Each pixel is either set to the foreground color of the ...
Definition: dwrite_3.h:293
GLuint GLenum GLenum transform
Definition: glext.h:10314
DWRITE_TEXT_ANTIALIAS_MODE
The root factory interface for all DWrite objects.
Definition: dwrite_1.h:1877
Face name preferred by the designer. This enables font designers to group more than four fonts in a s...
Definition: dwrite_3.h:200
DWRITE_LOCALITY
Specifies the locality of a resource.
Definition: dwrite_3.h:256
Definition: dwrite_3.h:2185
Script/language tag to identify the scripts or languages that the font declares it is able to support...
Definition: dwrite_3.h:162
interface IDWriteFactory IDWriteFactory
Definition: d2d1_1.h:35
Family name preferred by the designer. This enables font designers to group more than four fonts in a...
Definition: dwrite_3.h:80
DEFINE_ENUM_FLAG_OPERATORS(D2D1_DRAW_TEXT_OPTIONS)
Stretch of the font represented as a decimal string in the range 1-9.
Definition: dwrite_3.h:185
Script/language tag to identify the scripts or languages that the font was primarily designed to supp...
Definition: dwrite_3.h:156
Similar to natural mode except that antialiasing is performed in both the horizontal and vertical dir...
Definition: dwrite_3.h:326
DWRITE_FONT_LINE_GAP_USAGE fontLineGapUsage
Specify whether DWRITE_FONT_METRICS::lineGap value should be part of the line metrics.
Definition: dwrite_3.h:1702
Definition: dwrite_3.h:2431
UINT32 imageDataSize
Size of glyph data in bytes.
Definition: dwrite_3.h:1830
DWRITE_FONT_STYLE
The font style enumeration describes the slope style of a font face, such as Normal,...
Definition: dwrite.h:322
D2D1_POINT_2L horizontalLeftOrigin
Left origin along the horizontal Roman baseline.
Definition: dwrite_3.h:1853
DWRITE_GRID_FIT_MODE
Whether to enable grid-fitting of glyph outlines (a.k.a. hinting).
Definition: dwrite_2.h:44
No attributes.
Definition: dwrite_3.h:2530
GLenum GLuint GLenum GLsizei length
Definition: glext.h:6233
FLOAT leadingAfter
White space after the content of the line. This is included in the height of the line....
Definition: dwrite_3.h:1637
Specifies that antialiasing is performed in the horizontal direction. This rendering mode allows glyp...
Definition: dwrite.h:938
DWRITE_FONT_AXIS_TAG axisTag
Four character identifier of the font axis (weight, width, slant, italic...).
Definition: dwrite_3.h:2463
Specifies that the rendering mode is determined automatically based on the font and size.
Definition: dwrite.h:907
UINT32 pixelsPerEm
Pixels per em of the returned data. For non-scalable raster data (PNG/TIFF/JPG), this can be larger o...
Definition: dwrite_3.h:1843
_Field_z_ WCHAR const * propertyValue
Specifies the property value, such as "Segoe UI".
Definition: dwrite_3.h:236
DWRITE_MEASURING_MODE
The measuring method used for text layout.
Definition: dcommon.h:35
The postscript name of the font, e.g. "GillSans-Bold" from name id 6 in the name table.
Definition: dwrite_3.h:101
DWRITE_FONT_STRETCH
The font stretch enumeration describes relative change from the normal aspect ratio as specified by a...
Definition: dwrite.h:260
Unspecified font property identifier.
Definition: dwrite_3.h:69