• Api Documentation
  • Source Code
Search Results for

    Show / Hide Table of Contents
    • JeremyAnsel.DirectX.D2D1
      • D2D1AlphaMode
      • D2D1AntialiasMode
      • D2D1ArcSegment
      • D2D1ArcSize
      • D2D1BezierSegment
      • D2D1Bitmap
      • D2D1BitmapBrush
      • D2D1BitmapBrushProperties
      • D2D1BitmapInterpolationMode
      • D2D1BitmapProperties
      • D2D1BitmapRenderTarget
      • D2D1Brush
      • D2D1BrushProperties
      • D2D1CapStyle
      • D2D1ColorF
      • D2D1CombineMode
      • D2D1CompatibleRenderTargetOptions
      • D2D1Constants
      • D2D1DCInitializeMode
      • D2D1DCRenderTarget
      • D2D1DashStyle
      • D2D1DebugLevel
      • D2D1DrawTextOptions
      • D2D1DrawingStateBlock
      • D2D1DrawingStateDescription
      • D2D1Ellipse
      • D2D1EllipseGeometry
      • D2D1Error
      • D2D1ExtendMode
      • D2D1Factory
      • D2D1FactoryOptions
      • D2D1FactoryType
      • D2D1FeatureLevel
      • D2D1FigureBegin
      • D2D1FigureEnd
      • D2D1FillMode
      • D2D1Gamma
      • D2D1Geometry
      • D2D1GeometryGroup
      • D2D1GeometryRelation
      • D2D1GeometrySimplificationOption
      • D2D1GeometrySink
      • D2D1GradientStop
      • D2D1GradientStopCollection
      • D2D1HwndRenderTarget
      • D2D1HwndRenderTargetProperties
      • D2D1Image
      • D2D1InterpolationModeDefinition
      • D2D1KnownColor
      • D2D1Layer
      • D2D1LayerOptions
      • D2D1LayerParameters
      • D2D1LineJoin
      • D2D1LinearGradientBrush
      • D2D1LinearGradientBrushProperties
      • D2D1Matrix3X2F
      • D2D1Matrix4X3F
      • D2D1Matrix4X4F
      • D2D1Matrix5X4F
      • D2D1Mesh
      • D2D1OpacityMaskContent
      • D2D1PathGeometry
      • D2D1PathSegmentOptions
      • D2D1PixelFormat
      • D2D1Point2F
      • D2D1Point2L
      • D2D1Point2U
      • D2D1PresentOptions
      • D2D1QuadraticBezierSegment
      • D2D1RadialGradientBrush
      • D2D1RadialGradientBrushProperties
      • D2D1RectF
      • D2D1RectL
      • D2D1RectU
      • D2D1RectangleGeometry
      • D2D1RenderTarget
      • D2D1RenderTargetProperties
      • D2D1RenderTargetType
      • D2D1RenderTargetUsages
      • D2D1Resource
      • D2D1RoundedRect
      • D2D1RoundedRectangleGeometry
      • D2D1SimplifiedGeometrySink
      • D2D1SizeF
      • D2D1SizeU
      • D2D1SolidColorBrush
      • D2D1StrokeStyle
      • D2D1StrokeStyleProperties
      • D2D1SweepDirection
      • D2D1TessellationSink
      • D2D1TextAntialiasMode
      • D2D1TransformedGeometry
      • D2D1Triangle
      • D2D1Utils
      • D2D1Vector2F
      • D2D1Vector3F
      • D2D1Vector4F
      • D2D1WindowStates
      • ID2D1Releasable
    • JeremyAnsel.DirectX.D3D10
      • D3D10CreateDeviceOptions
      • D3D10Device1
      • D3D10DriverType
      • D3D10Error
      • D3D10FeatureLevel
      • D3D10Utils
      • ID3D10Releasable
    • JeremyAnsel.DirectX.D3D11
      • D3D11AsyncGetDataOptions
      • D3D11Asynchronous
      • D3D11BindOptions
      • D3D11BlendDesc
      • D3D11BlendOperation
      • D3D11BlendState
      • D3D11BlendValue
      • D3D11Box
      • D3D11Buffer
      • D3D11BufferDesc
      • D3D11BufferExSrv
      • D3D11BufferExSrvOptions
      • D3D11BufferRtv
      • D3D11BufferSrv
      • D3D11BufferUav
      • D3D11BufferUavOptions
      • D3D11ClassInstance
      • D3D11ClassInstanceDesc
      • D3D11ClassLinkage
      • D3D11ClearOptions
      • D3D11ColorWriteEnables
      • D3D11CommandList
      • D3D11ComparisonFunction
      • D3D11ComputeShader
      • D3D11Constants
      • D3D11Counter
      • D3D11CounterDataType
      • D3D11CounterDesc
      • D3D11CounterInfo
      • D3D11CounterType
      • D3D11CpuAccessOptions
      • D3D11CreateDeviceOptions
      • D3D11CullMode
      • D3D11DepthStencilDesc
      • D3D11DepthStencilOperationDesc
      • D3D11DepthStencilState
      • D3D11DepthStencilView
      • D3D11DepthStencilViewDesc
      • D3D11DepthStencilViewOptions
      • D3D11DepthWriteMask
      • D3D11Device
      • D3D11DeviceChild
      • D3D11DeviceContext
      • D3D11DeviceContextType
      • D3D11DomainShader
      • D3D11DriverType
      • D3D11DsvDimension
      • D3D11Error
      • D3D11Feature
      • D3D11FeatureDataArchitectureInfo
      • D3D11FeatureDataD3D10XHardwareOptions
      • D3D11FeatureDataD3D11Options
      • D3D11FeatureDataD3D11Options1
      • D3D11FeatureDataD3D9Options
      • D3D11FeatureDataD3D9Options1
      • D3D11FeatureDataD3D9ShadowSupport
      • D3D11FeatureDataD3D9SimpleInstancingSupport
      • D3D11FeatureDataDoubles
      • D3D11FeatureDataFormatSupport
      • D3D11FeatureDataFormatSupport2
      • D3D11FeatureDataMarkerSupport
      • D3D11FeatureDataShaderMinPrecisionSupport
      • D3D11FeatureDataThreading
      • D3D11FeatureLevel
      • D3D11FillMode
      • D3D11Filter
      • D3D11FormatSupport
      • D3D11FormatSupport2
      • D3D11GeometryShader
      • D3D11HullShader
      • D3D11InputClassification
      • D3D11InputElementDesc
      • D3D11InputLayout
      • D3D11MapCpuPermission
      • D3D11MapOptions
      • D3D11MappedSubResource
      • D3D11PixelShader
      • D3D11Predicate
      • D3D11Primitive
      • D3D11PrimitiveTopology
      • D3D11Query
      • D3D11QueryDataPipelineStatistics
      • D3D11QueryDataStreamOutputStatistics
      • D3D11QueryDataTimestampDisjoint
      • D3D11QueryDesc
      • D3D11QueryMiscOptions
      • D3D11QueryType
      • D3D11RaiseOptions
      • D3D11RasterizerDesc
      • D3D11RasterizerState
      • D3D11Rect
      • D3D11RenderTargetBlendDesc
      • D3D11RenderTargetView
      • D3D11RenderTargetViewDesc
      • D3D11Resource
      • D3D11ResourceDimension
      • D3D11ResourceMiscOptions
      • D3D11RtvDimension
      • D3D11SamplerDesc
      • D3D11SamplerState
      • D3D11ShaderMinPrecisionSupports
      • D3D11ShaderResourceView
      • D3D11ShaderResourceViewDesc
      • D3D11SrvDimension
      • D3D11StencilOperation
      • D3D11StreamOutputDeclarationEntry
      • D3D11SubResourceData
      • D3D11Texture1D
      • D3D11Texture1DArrayDsv
      • D3D11Texture1DArrayRtv
      • D3D11Texture1DArraySrv
      • D3D11Texture1DArrayUav
      • D3D11Texture1DDesc
      • D3D11Texture1DDsv
      • D3D11Texture1DRtv
      • D3D11Texture1DSrv
      • D3D11Texture1DUav
      • D3D11Texture2D
      • D3D11Texture2DArrayDsv
      • D3D11Texture2DArrayRtv
      • D3D11Texture2DArraySrv
      • D3D11Texture2DArrayUav
      • D3D11Texture2DDesc
      • D3D11Texture2DDsv
      • D3D11Texture2DMsArrayDsv
      • D3D11Texture2DMsArrayRtv
      • D3D11Texture2DMsArraySrv
      • D3D11Texture2DMsDsv
      • D3D11Texture2DMsRtv
      • D3D11Texture2DMsSrv
      • D3D11Texture2DRtv
      • D3D11Texture2DSrv
      • D3D11Texture2DUav
      • D3D11Texture3D
      • D3D11Texture3DDesc
      • D3D11Texture3DRtv
      • D3D11Texture3DSrv
      • D3D11Texture3DUav
      • D3D11TextureAddressMode
      • D3D11TextureCubeArraySrv
      • D3D11TextureCubeFace
      • D3D11TextureCubeSrv
      • D3D11TiledResourcesTier
      • D3D11UavDimension
      • D3D11UnorderedAccessView
      • D3D11UnorderedAccessViewDesc
      • D3D11Usage
      • D3D11Utils
      • D3D11VertexShader
      • D3D11View
      • D3D11Viewport
      • D3D11WellKnownPrivateDataId
      • DxgiSwapChainExtensions
      • ID3D11Releasable
    • JeremyAnsel.DirectX.D3DCompiler
      • D3DCompile
      • D3DCompileOptions
      • D3DDisassembleOptions
      • D3DShaderMacro
      • D3DTargets
    • JeremyAnsel.DirectX.DWrite
      • DWriteBreakCondition
      • DWriteClusterMetrics
      • DWriteError
      • DWriteFactory
      • DWriteFactoryType
      • DWriteFlowDirection
      • DWriteFont
      • DWriteFontCollection
      • DWriteFontFace
      • DWriteFontFaceType
      • DWriteFontFamily
      • DWriteFontFeature
      • DWriteFontFeatureTag
      • DWriteFontFile
      • DWriteFontFileType
      • DWriteFontList
      • DWriteFontMetrics
      • DWriteFontSimulations
      • DWriteFontStretch
      • DWriteFontStyle
      • DWriteFontWeight
      • DWriteGlyphMetrics
      • DWriteGlyphOffset
      • DWriteGlyphRun
      • DWriteGlyphRunDescription
      • DWriteHitTestMetrics
      • DWriteInformationalStringId
      • DWriteInlineObjectMetrics
      • DWriteLineBreakpoint
      • DWriteLineMetrics
      • DWriteLineSpacingMethod
      • DWriteLocalizedStrings
      • DWriteMatrix
      • DWriteMeasuringMode
      • DWriteNumberSubstitutionMethod
      • DWriteOverhangMetrics
      • DWriteParagraphAlignment
      • DWritePixelGeometry
      • DWriteReadingDirection
      • DWriteRect
      • DWriteRenderingMode
      • DWriteRenderingParams
      • DWriteScriptAnalysis
      • DWriteScriptShape
      • DWriteShapingGlyphProperties
      • DWriteShapingTextProperties
      • DWriteSize
      • DWriteStrikethrough
      • DWriteTextAlignment
      • DWriteTextFormat
      • DWriteTextLayout
      • DWriteTextMetrics
      • DWriteTextRange
      • DWriteTextureType
      • DWriteTrimming
      • DWriteTrimmingGranularity
      • DWriteTypography
      • DWriteUnderline
      • DWriteUtils
      • DWriteWordWrapping
      • IDWriteReleasable
    • JeremyAnsel.DirectX.DXMath
      • XMColor
      • XMComparisonRecord
      • XMFloat2
      • XMFloat3
      • XMFloat3X3
      • XMFloat4
      • XMFloat4X3
      • XMFloat4X4
      • XMInt2
      • XMInt3
      • XMInt4
      • XMKnownColor
      • XMMath
      • XMMatrix
      • XMPermutation
      • XMPlane
      • XMQuaternion
      • XMScalar
      • XMSelection
      • XMSwizzle
      • XMUInt2
      • XMUInt3
      • XMUInt4
      • XMVector
      • XMVector2
      • XMVector3
      • XMVector4
    • JeremyAnsel.DirectX.DXMath.Collision
      • BoundingBox
      • BoundingFrustum
      • BoundingOrientedBox
      • BoundingSphere
      • ContainmentType
      • PlaneIntersectionType
      • TriangleTest
    • JeremyAnsel.DirectX.DXMath.PackedVector
      • Half
      • XMByte2
      • XMByte4
      • XMByteN2
      • XMByteN4
      • XMColorRgba
      • XMDec4
      • XMDecN4
      • XMFloat3Packed
      • XMFloat3SharedExponent
      • XMHalf2
      • XMHalf4
      • XMShort2
      • XMShort4
      • XMShortN2
      • XMShortN4
      • XMU555
      • XMU565
      • XMUByte2
      • XMUByte4
      • XMUByteN2
      • XMUByteN4
      • XMUDec4
      • XMUDecN4
      • XMUDecN4XR
      • XMUNibble4
      • XMUShort2
      • XMUShort4
      • XMUShortN2
      • XMUShortN4
      • XMXDec4
      • XMXDecN4
    • JeremyAnsel.DirectX.Dxgi
      • DxgiAdapter
      • DxgiAdapter1
      • DxgiAdapter2
      • DxgiAdapter3
      • DxgiAdapterDesc
      • DxgiAdapterDesc1
      • DxgiAdapterDesc2
      • DxgiAdapterType
      • DxgiAlphaMode
      • DxgiColorRgb
      • DxgiColorRgba
      • DxgiComputePreemptionGranularity
      • DxgiCpuAccess
      • DxgiCreateFactoryOptions
      • DxgiDevice
      • DxgiDevice1
      • DxgiDevice2
      • DxgiDevice3
      • DxgiDeviceSubObject
      • DxgiEnumModes
      • DxgiError
      • DxgiFactory
      • DxgiFactory1
      • DxgiFactory2
      • DxgiFactory3
      • DxgiFormat
      • DxgiFrameStatistics
      • DxgiGammaControl
      • DxgiGammaControlCapabilities
      • DxgiGraphicsPreemptionGranularity
      • DxgiKeyedMutex
      • DxgiMapOptions
      • DxgiMappedRect
      • DxgiMatrix3x2F
      • DxgiModeDesc
      • DxgiModeDesc1
      • DxgiModeRotation
      • DxgiModeScaling
      • DxgiModeScanlineOrder
      • DxgiObject
      • DxgiOfferResourcePriority
      • DxgiOutput
      • DxgiOutput1
      • DxgiOutput2
      • DxgiOutput3
      • DxgiOutputDesc
      • DxgiPoint
      • DxgiPresentOptions
      • DxgiRational
      • DxgiRect
      • DxgiResidency
      • DxgiResource
      • DxgiResource1
      • DxgiResource2
      • DxgiResource3
      • DxgiResourceEvictionPriority
      • DxgiSampleDesc
      • DxgiScaling
      • DxgiSharedResource
      • DxgiSharedResourceAccess
      • DxgiSurface
      • DxgiSurface1
      • DxgiSurface2
      • DxgiSurface3
      • DxgiSurfaceDesc
      • DxgiSwapChain
      • DxgiSwapChain1
      • DxgiSwapChain2
      • DxgiSwapChain3
      • DxgiSwapChainDesc
      • DxgiSwapChainDesc1
      • DxgiSwapChainFullscreenDesc
      • DxgiSwapChainOptions
      • DxgiSwapEffect
      • DxgiUsages
      • DxgiUtils
      • DxgiWindowAssociationOptions
      • IDxgiReleasable

    Class DWriteFontFace

    The interface that represents an absolute reference to a font face. It contains font face type, appropriate file references and face identification data. Various font data such as metrics, names and glyph outlines is obtained from IDWriteFontFace.

    Inheritance
    object
    DWriteFontFace
    Implements
    IDisposable
    IDWriteReleasable
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: JeremyAnsel.DirectX.DWrite
    Assembly: JeremyAnsel.DirectX.DWrite.dll
    Syntax
    public sealed class DWriteFontFace : IDisposable, IDWriteReleasable

    Properties

    | Edit this page View Source

    FaceType

    Gets the file format type of a font face.

    Declaration
    public DWriteFontFaceType FaceType { get; }
    Property Value
    Type Description
    DWriteFontFaceType
    | Edit this page View Source

    GlyphCount

    Gets the number of glyphs in the font face.

    Declaration
    public ushort GlyphCount { get; }
    Property Value
    Type Description
    ushort
    | Edit this page View Source

    Handle

    Gets an handle representing the DWrite object interface.

    Declaration
    public object Handle { get; }
    Property Value
    Type Description
    object
    | Edit this page View Source

    Index

    Gets the zero-based index of the font face in its font file or files. If the font files contain a single face, the return value is zero.

    Declaration
    public uint Index { get; }
    Property Value
    Type Description
    uint
    | Edit this page View Source

    IsSymbolFont

    Gets a value indicating whether the font is a symbol font.

    Declaration
    public bool IsSymbolFont { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    Simulations

    Gets the algorithmic style simulation flags of a font face.

    Declaration
    public DWriteFontSimulations Simulations { get; }
    Property Value
    Type Description
    DWriteFontSimulations

    Methods

    | Edit this page View Source

    Dispose()

    Immediately releases the unmanaged resources used by the DWrite object.

    Declaration
    public void Dispose()
    | Edit this page View Source

    GetDesignGlyphMetrics(ushort[], bool)

    Obtains ideal glyph metrics in font design units. Design glyphs metrics are used for glyph positioning.

    Declaration
    public DWriteGlyphMetrics[] GetDesignGlyphMetrics(ushort[] glyphIndices, bool isSideways)
    Parameters
    Type Name Description
    ushort[] glyphIndices

    An array of glyph indices to compute the metrics for.

    bool isSideways

    Indicates whether the font is being used in a sideways run. This can affect the glyph metrics if the font has oblique simulation because sideways oblique simulation differs from non-sideways oblique simulation.

    Returns
    Type Description
    DWriteGlyphMetrics[]

    Array of DWriteGlyphMetrics structures filled by this function.

    Remarks

    The metrics returned by this function are in font design units.

    | Edit this page View Source

    GetFiles()

    Obtains the font files representing a font face.

    Declaration
    public DWriteFontFile[] GetFiles()
    Returns
    Type Description
    DWriteFontFile[]

    DWriteFontFile

    | Edit this page View Source

    GetGdiCompatibleGlyphMetrics(float, float, DWriteMatrix?, bool, ushort[], bool)

    Obtains glyph metrics in font design units with the return values compatible with what GDI would produce. Glyphs metrics are used for positioning of individual glyphs.

    Declaration
    public DWriteGlyphMetrics[] GetGdiCompatibleGlyphMetrics(float size, float pixelsPerDip, DWriteMatrix? transform, bool useGdiNatural, ushort[] glyphIndices, bool isSideways)
    Parameters
    Type Name Description
    float size

    Logical size of the font in DIP units. A DIP ("device-independent pixel") equals 1/96 inch.

    float pixelsPerDip

    Number of physical pixels per DIP. For example, if the DPI of the rendering surface is 96 this value is 1.0f. If the DPI is 120, this value is 120.0f/96.

    DWriteMatrix? transform

    Optional transform applied to the glyphs and their positions. This transform is applied after the scaling specified by the font size and pixelsPerDip.

    bool useGdiNatural

    When set to FALSE, the metrics are the same as the metrics of GDI aliased text. When set to TRUE, the metrics are the same as the metrics of text measured by GDI using a font created with CLEARTYPE_NATURAL_QUALITY.

    ushort[] glyphIndices

    An array of glyph indices to compute the metrics for.

    bool isSideways

    Indicates whether the font is being used in a sideways run. This can affect the glyph metrics if the font has oblique simulation because sideways oblique simulation differs from non-sideways oblique simulation.

    Returns
    Type Description
    DWriteGlyphMetrics[]

    Array of DWRITE_GLYPH_METRICS structures filled by this function.

    Remarks

    If any of the input glyph indices are outside of the valid glyph index range for the current font face, E_INVALIDARG will be returned. The metrics returned by this function are in font design units.

    | Edit this page View Source

    GetGdiCompatibleMetrics(float, float, DWriteMatrix?)

    Obtains design units and common metrics for the font face. These metrics are applicable to all the glyphs within a font face and are used by applications for layout calculations.

    Declaration
    public DWriteFontMetrics GetGdiCompatibleMetrics(float size, float pixelsPerDip, DWriteMatrix? transform)
    Parameters
    Type Name Description
    float size

    Logical size of the font in DIP units. A DIP ("device-independent pixel") equals 1/96 inch.

    float pixelsPerDip

    Number of physical pixels per DIP. For example, if the DPI of the rendering surface is 96 this value is 1.0f. If the DPI is 120, this value is 120.0f/96.

    DWriteMatrix? transform

    Optional transform applied to the glyphs and their positions. This transform is applied after the scaling specified by the font size and pixelsPerDip.

    Returns
    Type Description
    DWriteFontMetrics

    A DWriteFontMetrics structure.

    Remarks

    The metrics returned by this function are in font design units.

    | Edit this page View Source

    GetGlyphIndices(uint[])

    Returns the nominal mapping of UTF-32 Unicode code points to glyph indices as defined by the font 'cmap' table. Note that this mapping is primarily provided for line layout engines built on top of the physical font API. Because of OpenType glyph substitution and line layout character substitution, the nominal conversion does not always correspond to how a Unicode string will map to glyph indices when rendering using a particular font face. Also, note that Unicode Variation Selectors provide for alternate mappings for character to glyph. This call will always return the default variant.

    Declaration
    public ushort[] GetGlyphIndices(uint[] codePoints)
    Parameters
    Type Name Description
    uint[] codePoints

    An array of UTF-32 code points to obtain nominal glyph indices from.

    Returns
    Type Description
    ushort[]

    Array of nominal glyph indices filled by this function.

    | Edit this page View Source

    GetGlyphRunOutline(float, ushort[], float[], DWriteGlyphOffset[], bool, bool, object)

    Computes the outline of a run of glyphs by calling back to the outline sink interface.

    Declaration
    public void GetGlyphRunOutline(float size, ushort[] glyphIndices, float[] glyphAdvances, DWriteGlyphOffset[] glyphOffsets, bool isSideways, bool isRightToLeft, object geometrySink)
    Parameters
    Type Name Description
    float size

    Logical size of the font in DIP units. A DIP ("device-independent pixel") equals 1/96 inch.

    ushort[] glyphIndices

    Array of glyph indices.

    float[] glyphAdvances

    Optional array of glyph advances in DIPs.

    DWriteGlyphOffset[] glyphOffsets

    Optional array of glyph offsets.

    bool isSideways

    If true, specifies that glyphs are rotated 90 degrees to the left and vertical metrics are used. A client can render a vertical run by specifying isSideways = true and rotating the resulting geometry 90 degrees to the right using a transform.

    bool isRightToLeft

    If true, specifies that the advance direction is right to left. By default, the advance direction is left to right.

    object geometrySink

    Interface the function calls back to draw each element of the geometry.

    | Edit this page View Source

    GetMetrics()

    Obtains design units and common metrics for the font face. These metrics are applicable to all the glyphs within a font face and are used by applications for layout calculations.

    Declaration
    public DWriteFontMetrics GetMetrics()
    Returns
    Type Description
    DWriteFontMetrics

    DWriteFontMetrics

    Remarks

    The metrics returned by this function are in font design units.

    | Edit this page View Source

    GetRecommendedRenderingMode(float, float, DWriteMeasuringMode, DWriteRenderingParams)

    Determines the recommended rendering mode for the font given the specified size and rendering parameters.

    Declaration
    public DWriteRenderingMode GetRecommendedRenderingMode(float size, float pixelsPerDip, DWriteMeasuringMode measuringMode, DWriteRenderingParams renderingParams)
    Parameters
    Type Name Description
    float size

    Logical size of the font in DIP units. A DIP ("device-independent pixel") equals 1/96 inch.

    float pixelsPerDip

    Number of physical pixels per DIP. For example, if the DPI of the rendering surface is 96 this value is 1.0f. If the DPI is 120, this value is 120.0f/96.

    DWriteMeasuringMode measuringMode

    Specifies measuring mode that will be used for glyphs in the font. Renderer implementations may choose different rendering modes for given measuring modes, but best results are seen when the corresponding modes match: DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL for DWRITE_MEASURING_MODE_NATURAL DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC for DWRITE_MEASURING_MODE_GDI_CLASSIC DWRITE_RENDERING_MODE_CLEARTYPE_GDI_NATURAL for DWRITE_MEASURING_MODE_GDI_NATURAL

    DWriteRenderingParams renderingParams

    Rendering parameters object. This parameter is necessary in case the rendering parameters object overrides the rendering mode.

    Returns
    Type Description
    DWriteRenderingMode

    DWriteRenderingMode

    | Edit this page View Source

    Release()

    Releases the managed reference to the COM DWrite interface.

    Declaration
    public void Release()
    | Edit this page View Source

    ReleaseFontTable(nint)

    Releases the table obtained earlier from TryGetFontTable.

    Declaration
    public void ReleaseFontTable(nint tableContext)
    Parameters
    Type Name Description
    nint tableContext

    Opaque context from TryGetFontTable(uint, out nint, out uint, out nint).

    | Edit this page View Source

    ToBoolean()

    Gets a boolean indicating if the handle is not null.

    Declaration
    public bool ToBoolean()
    Returns
    Type Description
    bool

    A boolean

    | Edit this page View Source

    TryGetFontTable(uint, out nint, out uint, out nint)

    Finds the specified OpenType font table if it exists and returns a pointer to it. The function accesses the underlying font data via the IDWriteFontFileStream interface implemented by the font file loader.

    Declaration
    public bool TryGetFontTable(uint openTypeTableTag, out nint tableData, out uint tableSize, out nint tableContext)
    Parameters
    Type Name Description
    uint openTypeTableTag

    Four character tag of table to find. Use the DWRITE_MAKE_OPENTYPE_TAG() macro to create it. Unlike GDI, it does not support the special TTCF and null tags to access the whole font.

    nint tableData

    Pointer to base of table in memory. The pointer is only valid so long as the FontFace used to get the font table still exists (not any other FontFace, even if it actually refers to the same physical font).

    uint tableSize

    Byte size of table.

    nint tableContext

    Opaque context which must be freed by calling ReleaseFontTable. The context actually comes from the lower level IDWriteFontFileStream, which may be implemented by the application or DWrite itself. It is possible for a NULL tableContext to be returned, especially if the implementation directly memory maps the whole file. Nevertheless, always release it later, and do not use it as a test for function success. The same table can be queried multiple times, but each returned context can be different, so release each separately.

    Returns
    Type Description
    bool

    True if table exists.

    Remarks

    If a table can not be found, the function will not return an error, but the size will be 0, table NULL, and exists = FALSE. The context does not need to be freed if the table was not found. The context for the same tag may be different for each call, so each one must be held and released separately.

    Operators

    | Edit this page View Source

    implicit operator bool(DWriteFontFace)

    Gets a boolean indicating if the handle is not null.

    Declaration
    public static implicit operator bool(DWriteFontFace value)
    Parameters
    Type Name Description
    DWriteFontFace value

    A DWrite object.

    Returns
    Type Description
    bool

    A boolean

    Implements

    IDisposable
    IDWriteReleasable
    • Edit this page
    • View Source
    In this article
    Back to top Copyright (c) 2014-2022 Jérémy Ansel