// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ namespace Win32.Graphics.DirectWrite; /// /// IDWriteFactory2 [Guid("0439fc60-ca44-4994-8dee-3a9af7b732ec")] [NativeTypeName("struct IDWriteFactory2 : IDWriteFactory1")] [NativeInheritance("IDWriteFactory1")] public unsafe partial struct IDWriteFactory2 : IDWriteFactory2.Interface, INativeGuid { public static ref readonly Guid IID_IDWriteFactory2 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { ReadOnlySpan data = new byte[] { 0x60, 0xFC, 0x39, 0x04, 0x44, 0xCA, 0x94, 0x49, 0x8D, 0xEE, 0x3A, 0x9A, 0xF7, 0xB7, 0x32, 0xEC }; Debug.Assert(data.Length == Unsafe.SizeOf()); return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); } } #if NET6_0_OR_GREATER static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IDWriteFactory2)); #else public static Guid* NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IDWriteFactory2)); #endif public void** lpVtbl; /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(0)] public HResult QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) { return ((delegate* unmanaged[Stdcall])(lpVtbl[0]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), riid, ppvObject); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(1)] [return: NativeTypeName("ULONG")] public uint AddRef() { return ((delegate* unmanaged[Stdcall])(lpVtbl[1]))((IDWriteFactory2*)Unsafe.AsPointer(ref this)); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(2)] [return: NativeTypeName("ULONG")] public uint Release() { return ((delegate* unmanaged[Stdcall])(lpVtbl[2]))((IDWriteFactory2*)Unsafe.AsPointer(ref this)); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(3)] public HResult GetSystemFontCollection(IDWriteFontCollection** fontCollection, Bool32 checkForUpdates) { return ((delegate* unmanaged[Stdcall])(lpVtbl[3]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontCollection, checkForUpdates); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(4)] public HResult CreateCustomFontCollection(IDWriteFontCollectionLoader* collectionLoader, void* collectionKey, uint collectionKeySize, IDWriteFontCollection** fontCollection) { return ((delegate* unmanaged[Stdcall])(lpVtbl[4]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), collectionLoader, collectionKey, collectionKeySize, fontCollection); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(5)] public HResult RegisterFontCollectionLoader(IDWriteFontCollectionLoader* fontCollectionLoader) { return ((delegate* unmanaged[Stdcall])(lpVtbl[5]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontCollectionLoader); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(6)] public HResult UnregisterFontCollectionLoader(IDWriteFontCollectionLoader* fontCollectionLoader) { return ((delegate* unmanaged[Stdcall])(lpVtbl[6]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontCollectionLoader); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(7)] public HResult CreateFontFileReference(ushort* filePath, ulong* lastWriteTime, IDWriteFontFile** fontFile) { return ((delegate* unmanaged[Stdcall])(lpVtbl[7]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), filePath, lastWriteTime, fontFile); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(8)] public HResult CreateCustomFontFileReference(void* fontFileReferenceKey, uint fontFileReferenceKeySize, IDWriteFontFileLoader* fontFileLoader, IDWriteFontFile** fontFile) { return ((delegate* unmanaged[Stdcall])(lpVtbl[8]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFileReferenceKey, fontFileReferenceKeySize, fontFileLoader, fontFile); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(9)] public HResult CreateFontFace(FontFaceType fontFaceType, uint numberOfFiles, IDWriteFontFile** fontFiles, uint faceIndex, FontSimulations fontFaceSimulationFlags, IDWriteFontFace** fontFace) { return ((delegate* unmanaged[Stdcall])(lpVtbl[9]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFaceType, numberOfFiles, fontFiles, faceIndex, fontFaceSimulationFlags, fontFace); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(10)] public HResult CreateRenderingParams(IDWriteRenderingParams** renderingParams) { return ((delegate* unmanaged[Stdcall])(lpVtbl[10]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), renderingParams); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(11)] public HResult CreateMonitorRenderingParams(IntPtr monitor, IDWriteRenderingParams** renderingParams) { return ((delegate* unmanaged[Stdcall])(lpVtbl[11]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), monitor, renderingParams); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(12)] public HResult CreateCustomRenderingParams(float gamma, float enhancedContrast, float clearTypeLevel, PixelGeometry pixelGeometry, RenderingMode renderingMode, IDWriteRenderingParams** renderingParams) { return ((delegate* unmanaged[Stdcall])(lpVtbl[12]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), gamma, enhancedContrast, clearTypeLevel, pixelGeometry, renderingMode, renderingParams); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(13)] public HResult RegisterFontFileLoader(IDWriteFontFileLoader* fontFileLoader) { return ((delegate* unmanaged[Stdcall])(lpVtbl[13]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFileLoader); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(14)] public HResult UnregisterFontFileLoader(IDWriteFontFileLoader* fontFileLoader) { return ((delegate* unmanaged[Stdcall])(lpVtbl[14]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFileLoader); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(15)] public HResult CreateTextFormat(ushort* fontFamilyName, IDWriteFontCollection* fontCollection, FontWeight fontWeight, FontStyle fontStyle, FontStretch fontStretch, float fontSize, ushort* localeName, IDWriteTextFormat** textFormat) { return ((delegate* unmanaged[Stdcall])(lpVtbl[15]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFamilyName, fontCollection, fontWeight, fontStyle, fontStretch, fontSize, localeName, textFormat); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(16)] public HResult CreateTypography(IDWriteTypography** typography) { return ((delegate* unmanaged[Stdcall])(lpVtbl[16]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), typography); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(17)] public HResult GetGdiInterop(IDWriteGdiInterop** gdiInterop) { return ((delegate* unmanaged[Stdcall])(lpVtbl[17]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), gdiInterop); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(18)] public HResult CreateTextLayout(ushort* @string, uint stringLength, IDWriteTextFormat* textFormat, float maxWidth, float maxHeight, IDWriteTextLayout** textLayout) { return ((delegate* unmanaged[Stdcall])(lpVtbl[18]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), @string, stringLength, textFormat, maxWidth, maxHeight, textLayout); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(19)] public HResult CreateGdiCompatibleTextLayout(ushort* @string, uint stringLength, IDWriteTextFormat* textFormat, float layoutWidth, float layoutHeight, float pixelsPerDip, Matrix3x2* transform, Bool32 useGdiNatural, IDWriteTextLayout** textLayout) { return ((delegate* unmanaged[Stdcall])(lpVtbl[19]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), @string, stringLength, textFormat, layoutWidth, layoutHeight, pixelsPerDip, transform, useGdiNatural, textLayout); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(20)] public HResult CreateEllipsisTrimmingSign(IDWriteTextFormat* textFormat, IDWriteInlineObject** trimmingSign) { return ((delegate* unmanaged[Stdcall])(lpVtbl[20]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), textFormat, trimmingSign); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(21)] public HResult CreateTextAnalyzer(IDWriteTextAnalyzer** textAnalyzer) { return ((delegate* unmanaged[Stdcall])(lpVtbl[21]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), textAnalyzer); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(22)] public HResult CreateNumberSubstitution(NumberSubstitutionMethod substitutionMethod, ushort* localeName, Bool32 ignoreUserOverride, IDWriteNumberSubstitution** numberSubstitution) { return ((delegate* unmanaged[Stdcall])(lpVtbl[22]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), substitutionMethod, localeName, ignoreUserOverride, numberSubstitution); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(23)] public HResult CreateGlyphRunAnalysis(GlyphRun* glyphRun, float pixelsPerDip, Matrix3x2* transform, RenderingMode renderingMode, MeasuringMode measuringMode, float baselineOriginX, float baselineOriginY, IDWriteGlyphRunAnalysis** glyphRunAnalysis) { return ((delegate* unmanaged[Stdcall])(lpVtbl[23]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), glyphRun, pixelsPerDip, transform, renderingMode, measuringMode, baselineOriginX, baselineOriginY, glyphRunAnalysis); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(24)] public HResult GetEudcFontCollection(IDWriteFontCollection** fontCollection, Bool32 checkForUpdates) { return ((delegate* unmanaged[Stdcall])(lpVtbl[24]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontCollection, checkForUpdates); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(25)] public HResult CreateCustomRenderingParams(float gamma, float enhancedContrast, float enhancedContrastGrayscale, float clearTypeLevel, PixelGeometry pixelGeometry, RenderingMode renderingMode, IDWriteRenderingParams1** renderingParams) { return ((delegate* unmanaged[Stdcall])(lpVtbl[25]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), gamma, enhancedContrast, enhancedContrastGrayscale, clearTypeLevel, pixelGeometry, renderingMode, renderingParams); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(26)] public HResult GetSystemFontFallback(IDWriteFontFallback** fontFallback) { return ((delegate* unmanaged[Stdcall])(lpVtbl[26]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFallback); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(27)] public HResult CreateFontFallbackBuilder(IDWriteFontFallbackBuilder** fontFallbackBuilder) { return ((delegate* unmanaged[Stdcall])(lpVtbl[27]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), fontFallbackBuilder); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(28)] public HResult TranslateColorGlyphRun(float baselineOriginX, float baselineOriginY, GlyphRun* glyphRun, GlyphRunDescription* glyphRunDescription, MeasuringMode measuringMode, Matrix3x2* worldToDeviceTransform, uint colorPaletteIndex, IDWriteColorGlyphRunEnumerator** colorLayers) { return ((delegate* unmanaged[Stdcall])(lpVtbl[28]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), baselineOriginX, baselineOriginY, glyphRun, glyphRunDescription, measuringMode, worldToDeviceTransform, colorPaletteIndex, colorLayers); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(29)] public HResult CreateCustomRenderingParams(float gamma, float enhancedContrast, float grayscaleEnhancedContrast, float clearTypeLevel, PixelGeometry pixelGeometry, RenderingMode renderingMode, GridFitMode gridFitMode, IDWriteRenderingParams2** renderingParams) { return ((delegate* unmanaged[Stdcall])(lpVtbl[29]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), gamma, enhancedContrast, grayscaleEnhancedContrast, clearTypeLevel, pixelGeometry, renderingMode, gridFitMode, renderingParams); } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(30)] public HResult CreateGlyphRunAnalysis(GlyphRun* glyphRun, Matrix3x2* transform, RenderingMode renderingMode, MeasuringMode measuringMode, GridFitMode gridFitMode, TextAntialiasMode antialiasMode, float baselineOriginX, float baselineOriginY, IDWriteGlyphRunAnalysis** glyphRunAnalysis) { return ((delegate* unmanaged[Stdcall])(lpVtbl[30]))((IDWriteFactory2*)Unsafe.AsPointer(ref this), glyphRun, transform, renderingMode, measuringMode, gridFitMode, antialiasMode, baselineOriginX, baselineOriginY, glyphRunAnalysis); } public interface Interface : IDWriteFactory1.Interface { [VtblIndex(26)] HResult GetSystemFontFallback(IDWriteFontFallback** fontFallback); [VtblIndex(27)] HResult CreateFontFallbackBuilder(IDWriteFontFallbackBuilder** fontFallbackBuilder); [VtblIndex(28)] HResult TranslateColorGlyphRun(float baselineOriginX, float baselineOriginY, GlyphRun* glyphRun, GlyphRunDescription* glyphRunDescription, MeasuringMode measuringMode, Matrix3x2* worldToDeviceTransform, uint colorPaletteIndex, IDWriteColorGlyphRunEnumerator** colorLayers); [VtblIndex(29)] HResult CreateCustomRenderingParams(float gamma, float enhancedContrast, float grayscaleEnhancedContrast, float clearTypeLevel, PixelGeometry pixelGeometry, RenderingMode renderingMode, GridFitMode gridFitMode, IDWriteRenderingParams2** renderingParams); [VtblIndex(30)] HResult CreateGlyphRunAnalysis(GlyphRun* glyphRun, Matrix3x2* transform, RenderingMode renderingMode, MeasuringMode measuringMode, GridFitMode gridFitMode, TextAntialiasMode antialiasMode, float baselineOriginX, float baselineOriginY, IDWriteGlyphRunAnalysis** glyphRunAnalysis); } }