Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Overview of the DirectWrite technology.
To develop DirectWrite, you need these headers:
For programming guidance for this technology, see:
Enumerations
| DWRITE_AUTOMATIC_FONT_AXES  Defines constants that specify certain axes that can be applied automatically in layout during font selection.  | 
| DWRITE_BASELINE  The DWRITE_BASELINE enumeration contains values that specify the baseline for text alignment.  | 
| DWRITE_BREAK_CONDITION  Indicates the condition at the edges of inline object or text used to determine line-breaking behavior.  | 
| DWRITE_CONTAINER_TYPE  Specifies the container format of a font resource. A container format is distinct from a font file format (DWRITE_FONT_FILE_TYPE) because the container describes the container in which the underlying font file is packaged.  | 
| DWRITE_FACTORY_TYPE  Specifies the type of DirectWrite factory object.  | 
| DWRITE_FLOW_DIRECTION  Indicates the direction of how lines of text are placed relative to one another.  | 
| DWRITE_FONT_AXIS_ATTRIBUTES  Defines constants that specify attributes for a font axis.  | 
| DWRITE_FONT_AXIS_TAG  Defines constants that specify a four-character identifier for a font axis.  | 
| DWRITE_FONT_FACE_TYPE  Indicates the file format of a complete font face.  | 
| DWRITE_FONT_FAMILY_MODEL  Defines constants that specify how font families are grouped together.  | 
| DWRITE_FONT_FEATURE_TAG  A value that indicates the typographic feature of text supplied by the font.  | 
| DWRITE_FONT_FILE_TYPE  The type of a font represented by a single font file. Font formats that consist of multiple files, for example Type 1 .PFM and .PFB, have separate enum values for each of the file types.  | 
| DWRITE_FONT_LINE_GAP_USAGE  Specify whether DWRITE_FONT_METRICS::lineGap value should be part of the line metrics.  | 
| DWRITE_FONT_PROPERTY_ID  Identifies a string in a font.  | 
| DWRITE_FONT_SIMULATIONS  Specifies algorithmic style simulations to be applied to the font face. Bold and oblique simulations can be combined via bitwise OR operation.  | 
| DWRITE_FONT_SOURCE_TYPE  Defines constants that specify the mechanism by which a font came to be included in a font set.  | 
| DWRITE_FONT_STRETCH  Represents the degree to which a font has been stretched compared to a font's normal aspect ratio.  | 
| DWRITE_FONT_STYLE  Represents the style of a font face as normal, italic, or oblique.  | 
| DWRITE_FONT_WEIGHT  Represents the density of a typeface, in terms of the lightness or heaviness of the strokes.  | 
| DWRITE_GLYPH_IMAGE_FORMATS  Specifies which formats are supported in the font, either at a font-wide level or per glyph.  | 
| DWRITE_GLYPH_ORIENTATION_ANGLE  The DWRITE_GLYPH_ORIENTATION_ANGLE enumeration contains values that specify how the glyph is oriented to the x-axis.  | 
| DWRITE_GRID_FIT_MODE  Specifies whether to enable grid-fitting of glyph outlines (also known as hinting).  | 
| DWRITE_INFORMATIONAL_STRING_ID  The informational string enumeration which identifies a string embedded in a font file.  | 
| DWRITE_LINE_SPACING_METHOD  The method used for line spacing in a text layout.  | 
| DWRITE_LOCALITY  Specifies the location of a resource.  | 
| DWRITE_MEASURING_MODE  Indicates the measuring method used for text layout.  | 
| DWRITE_NUMBER_SUBSTITUTION_METHOD  Specifies how to apply number substitution on digits and related punctuation.  | 
| DWRITE_OPTICAL_ALIGNMENT  The optical margin alignment mode.  | 
| DWRITE_OUTLINE_THRESHOLD  The DWRITE_OUTLINE_THRESHOLD enumeration contains values that specify the policy used by the IDWriteFontFace1::GetRecommendedRenderingMode method to determine whether to render glyphs in outline mode.  | 
| DWRITE_PANOSE_ARM_STYLE  The DWRITE_PANOSE_ARM_STYLE enumeration contains values that specify the style of termination of stems and rounded letterforms for text.  | 
| DWRITE_PANOSE_ASPECT  The DWRITE_PANOSE_ASPECT enumeration contains values that specify the ratio between the width and height of the character face.  | 
| DWRITE_PANOSE_ASPECT_RATIO  The DWRITE_PANOSE_ASPECT_RATIO enumeration contains values that specify info about the ratio between width and height of the character face.  | 
| DWRITE_PANOSE_CHARACTER_RANGES  The DWRITE_PANOSE_CHARACTER_RANGES enumeration contains values that specify the type of characters available in the font.  | 
| DWRITE_PANOSE_CONTRAST  The DWRITE_PANOSE_CONTRAST enumeration contains values that specify the ratio between thickest and thinnest point of the stroke for a letter such as uppercase 'O'.  | 
| DWRITE_PANOSE_DECORATIVE_CLASS  The DWRITE_PANOSE_DECORATIVE_CLASS enumeration contains values that specify the general look of the character face.  | 
| DWRITE_PANOSE_DECORATIVE_TOPOLOGY  The DWRITE_PANOSE_DECORATIVE_TOPOLOGY enumeration contains values that specify the overall shape characteristics of the font.  | 
| DWRITE_PANOSE_FAMILY  The DWRITE_PANOSE_FAMILY enumeration contains values that specify the kind of typeface classification.  | 
| DWRITE_PANOSE_FILL  The DWRITE_PANOSE_FILL enumeration contains values that specify the type of fill and line treatment.  | 
| DWRITE_PANOSE_FINIALS  The DWRITE_PANOSE_FINIALS enumeration contains values that specify how character ends and minuscule ascenders are treated.  | 
| DWRITE_PANOSE_LETTERFORM  The DWRITE_PANOSE_LETTERFORM enumeration contains values that specify the roundness of letterform for text.  | 
| DWRITE_PANOSE_LINING  The DWRITE_PANOSE_LINING enumeration contains values that specify the handling of the outline for the decorative typeface.  | 
| DWRITE_PANOSE_MIDLINE  The DWRITE_PANOSE_MIDLINE enumeration contains values that specify info about the placement of midline across uppercase characters and the treatment of diagonal stem apexes.  | 
| DWRITE_PANOSE_PROPORTION  The DWRITE_PANOSE_PROPORTION enumeration contains values that specify the proportion of the glyph shape by considering additional detail to standard characters.  | 
| DWRITE_PANOSE_SCRIPT_FORM  The DWRITE_PANOSE_SCRIPT_FORM enumeration contains values that specify the general look of the character face, with consideration of its slope and tails.  | 
| DWRITE_PANOSE_SCRIPT_TOPOLOGY  The DWRITE_PANOSE_SCRIPT_TOPOLOGY enumeration contains values that specify the topology of letterforms.  | 
| DWRITE_PANOSE_SERIF_STYLE  The DWRITE_PANOSE_SERIF_STYLE enumeration contains values that specify the appearance of the serif text.  | 
| DWRITE_PANOSE_SPACING  The DWRITE_PANOSE_SPACING enumeration contains values that specify character spacing (monospace versus proportional).  | 
| DWRITE_PANOSE_STROKE_VARIATION  The DWRITE_PANOSE_STROKE_VARIATION enumeration contains values that specify the relationship between thin and thick stems of text characters.  | 
| DWRITE_PANOSE_SYMBOL_ASPECT_RATIO  The DWRITE_PANOSE_SYMBOL_ASPECT_RATIO enumeration contains values that specify the aspect ratio of symbolic characters.  | 
| DWRITE_PANOSE_SYMBOL_KIND  The DWRITE_PANOSE_SYMBOL_KIND enumeration contains values that specify the kind of symbol set.  | 
| DWRITE_PANOSE_TOOL_KIND  The DWRITE_PANOSE_TOOL_KIND enumeration contains values that specify the kind of tool that is used to create character forms.  | 
| DWRITE_PANOSE_WEIGHT  The DWRITE_PANOSE_WEIGHT enumeration contains values that specify the weight of characters.  | 
| DWRITE_PANOSE_XASCENT  The DWRITE_PANOSE_XASCENT enumeration contains values that specify the relative size of the lowercase letters.  | 
| DWRITE_PANOSE_XHEIGHT  The DWRITE_PANOSE_XHEIGHT enumeration contains values that specify info about the relative size of lowercase letters and the treatment of diacritic marks (xheight).  | 
| DWRITE_PARAGRAPH_ALIGNMENT  Specifies the alignment of paragraph text along the flow direction axis, relative to the top and bottom of the flow's layout box.  | 
| DWRITE_PIXEL_GEOMETRY  Represents the internal structure of a device pixel (that is, the physical arrangement of red, green, and blue color components) that is assumed for purposes of rendering text.  | 
| DWRITE_READING_DIRECTION  Specifies the direction in which reading progresses.  | 
| DWRITE_RENDERING_MODE  Represents a method of rendering glyphs.  | 
| DWRITE_RENDERING_MODE1  Specifies how glyphs are rendered.  | 
| DWRITE_SCRIPT_SHAPES  Indicates additional shaping requirements for text.  | 
| DWRITE_TEXT_ALIGNMENT  Specifies the alignment of paragraph text along the reading direction axis, relative to the leading and trailing edge of the layout box.  | 
| DWRITE_TEXT_ANTIALIAS_MODE  The DWRITE_TEXT_ANTIALIAS_MODE enumeration contains values that specify the type of antialiasing to use for text when the rendering mode calls for antialiasing.  | 
| DWRITE_TEXTURE_TYPE  Identifies a type of alpha texture.  | 
| DWRITE_TRIMMING_GRANULARITY  Specifies the text granularity used to trim text overflowing the layout box.  | 
| DWRITE_VERTICAL_GLYPH_ORIENTATION  The DWRITE_VERTICAL_GLYPH_ORIENTATION enumeration contains values that specify the desired kind of glyph orientation for the text.  | 
| DWRITE_WORD_WRAPPING  Specifies the word wrapping to be used in a particular multiline paragraph.  | 
Functions
| AddFont  Adds a font to the set being built.  | 
| AddFontFaceReference  Adds a reference to a font to the set being built. The necessary metadata will automatically be extracted from the font upon calling CreateFontSet. (overload 1/2)  | 
| AddFontFaceReference  Adds a reference to a font to the set being built. The necessary metadata will automatically be extracted from the font upon calling CreateFontSet. (overload 2/2)  | 
| AddFontFeature  Adds an OpenType font feature.  | 
| AddFontFile  Adds references to all the fonts in the specified font file.  | 
| AddFontFile  Adds references to all the fonts in the specified font file. The method parses the font file to determine the fonts and their properties.  | 
| AddFontSet  Appends an existing font set to the one being built, allowing one to aggregate two sets or to essentially extend an existing one.  | 
| AddListener  Registers a client-defined listener object that receives download notifications. All registered listener's DownloadCompleted will be called after BeginDownloadcompletes.  | 
| AddMapping  Appends a single mapping to the list. Call this once for each additional mapping.  | 
| AddMappings  Add all the mappings from an existing font fallback object.  | 
| Analyze  Analyzes a file and returns whether it represents a font, and whether the font type is supported by the font system.  | 
| AnalyzeBidi  Analyzes a text range for script directionality, reading attributes from the source and reporting levels to the sink callback SetBidiLevel.  | 
| AnalyzeContainerType  The AnalyzeContainerType method analyzes the specified file data to determine whether it is a known font container format (e.g., WOFF or WOFF2).  | 
| AnalyzeLineBreakpoints  Analyzes a text range for potential breakpoint opportunities, reading attributes from the source and reporting breakpoint opportunities to the sink callback SetLineBreakpoints.  | 
| AnalyzeNumberSubstitution  Analyzes a text range for spans where number substitution is applicable, reading attributes from the source and reporting substitutable ranges to the sink callback SetNumberSubstitution.  | 
| AnalyzeScript  Analyzes a text range for script boundaries, reading text attributes from the source and reporting the Unicode script ID to the sink callback SetScript.  | 
| AnalyzeVerticalGlyphOrientation  Analyzes a text range for script orientation, reading text and attributes from the source and reporting results to the sink callback SetGlyphOrientation.  | 
| ApplyCharacterSpacing  Applies spacing between characters, properly adjusting glyph clusters and diacritics.  | 
| AreCharactersLocal  Determines whether the specified characters are local.  | 
| AreGlyphsLocal  Determines whether the specified glyphs are local.  | 
| BeginDownload  Begins an asynchronous download operation. The download operation executes in the background until it completes or is cancelled by a CancelDownload call.  | 
| BeginDownload  Begins downloading all or part of the font file.  | 
| CancelDownload  Removes all download requests from the queue and cancels any active download operations.  | 
| CheckTypographicFeature  Checks if a typographic feature is available for a glyph or a set of glyphs.  | 
| ComputeGlyphOrigins  Converts glyph run placements to glyph origins. (overload 2/2)  | 
| ComputeGlyphOrigins  Converts glyph run placements to glyph origins. (overload 1/2)  | 
| ConvertFontFaceToLOGFONT  Initializes a LOGFONT structure based on the GDI-compatible properties of the specified font. (IDWriteGdiInterop.ConvertFontFaceToLOGFONT)  | 
| ConvertFontToLOGFONT  Initializes a LOGFONT structure based on the GDI-compatible properties of the specified font. (IDWriteGdiInterop.ConvertFontToLOGFONT)  | 
| ConvertWeightStretchStyleToFontAxisValues  Computes derived font axis values from the specified font weight, stretch, style, and size.  | 
| CreateAlphaTexture  Creates an alpha texture of the specified type for glyphs within a specified bounding rectangle.  | 
| CreateBitmapRenderTarget  Creates an object that encapsulates a bitmap and memory DC (device context) which can be used for rendering glyphs.  | 
| CreateCustomFontCollection  Creates a font collection using a custom font collection loader.  | 
| CreateCustomFontFileReference  Creates a reference to an application-specific font file resource.  | 
| CreateCustomRenderingParams  Creates a rendering parameters object with the specified properties. (IDWriteFactory.CreateCustomRenderingParams)  | 
| CreateCustomRenderingParams  Creates a rendering parameters object with the specified properties. (IDWriteFactory1.CreateCustomRenderingParams)  | 
| CreateCustomRenderingParams  Creates a rendering parameters object with the specified properties. (IDWriteFactory3.CreateCustomRenderingParams)  | 
| CreateCustomRenderingParams  Creates a rendering parameters object with the specified properties. (IDWriteFactory2.CreateCustomRenderingParams)  | 
| CreateEllipsisTrimmingSign  Creates an inline object for trimming, using an ellipsis as the omission sign.  | 
| CreateEnumeratorFromKey  Creates a font file enumerator object that encapsulates a collection of font files. The font system calls back to this interface to create a font collection.  | 
| CreateFontCollectionFromFontSet  Create a weight/width/slope tree from a set of fonts.  | 
| CreateFontCollectionFromFontSet  From a font set, create a collection of fonts grouped into families.  | 
| CreateFontFace  Creates an object that represents a font face.  | 
| CreateFontFace  Creates a font face object for the font. (IDWriteFont.CreateFontFace)  | 
| CreateFontFace  Creates a font face object for the font. (IDWriteFont3.CreateFontFace)  | 
| CreateFontFace  Creates a font face from the reference for use with layout, shaping, or rendering.  | 
| CreateFontFace  Uses the reference to create a font face, for use with layout, shaping, or rendering.  | 
| CreateFontFace  Creates a font face instance with specific axis values.  | 
| CreateFontFace  Creates a font face for a single item (rather than going through the font face reference).  | 
| CreateFontFaceFromHdc  Creates an IDWriteFontFace object that corresponds to the currently selected HFONT of the specified HDC.  | 
| CreateFontFaceReference  Creates a reference to a font given a full path. (overload 1/2)  | 
| CreateFontFaceReference  Creates a reference to a font given a full path. (overload 2/2)  | 
| CreateFontFaceReference  Creates a reference to a specific font instance within a file.  | 
| CreateFontFaceReference  Creates a font face reference with specific axis values.  | 
| CreateFontFaceWithSimulations  Creates a font face with alternate font simulations, for example, to explicitly simulate a bold font face out of a regular variant.  | 
| CreateFontFallback  Creates the finalized fallback object from the mappings added.  | 
| CreateFontFallbackBuilder  Creates a font fallback builder object.  | 
| CreateFontFileReference  Creates a font file reference object from a local font file.  | 
| CreateFontFileReferenceFromUrl  Creates a font file reference from a URL if the loader supports this capability.  | 
| CreateFontFromLOGFONT  Creates a font object that matches the properties specified by the LOGFONT structure. (IDWriteGdiInterop.CreateFontFromLOGFONT)  | 
| CreateFontFromLOGFONT  Creates a font object that matches the properties specified by the LOGFONT structure. (IDWriteGdiInterop1.CreateFontFromLOGFONT)  | 
| CreateFontResource  Creates a font resource, given a font file and a face index.  | 
| CreateFontResource  Creates the font resource of a single item.  | 
| CreateFontSet  Creates a font set from all the font face references added so far with AddFontFaceReference.  | 
| CreateFontSetBuilder  Creates an empty font set builder to add font face references and create a custom font set. (IDWriteFactory3.CreateFontSetBuilder)  | 
| CreateFontSetBuilder  Creates an empty font set builder to add font face references and create a custom font set. (IDWriteFactory5.CreateFontSetBuilder)  | 
| CreateFontSetBuilder  Creates an empty font set builder, ready to add font instances to, and create a custom font set.  | 
| CreateGdiCompatibleTextLayout  Takes a string, format, and associated constraints, and produces an object representing the result, formatted for a particular display resolution and measuring mode.  | 
| CreateGlyphRunAnalysis  Creates a glyph run analysis object, which encapsulates information used to render a glyph run. (IDWriteFactory.CreateGlyphRunAnalysis)  | 
| CreateGlyphRunAnalysis  Creates a glyph-run-analysis object that encapsulates info that DirectWrite uses to render a glyph run.  | 
| CreateGlyphRunAnalysis  Creates a glyph run analysis object, which encapsulates information used to render a glyph run. (IDWriteFactory2.CreateGlyphRunAnalysis)  | 
| CreateHttpFontFileLoader  Creates a remote font file loader that can create font file references from HTTP or HTTPS URLs. The caller is responsible for registering and unregistering the loader.  | 
| CreateInMemoryFontFileLoader  Creates a loader object that can be used to create font file references to in-memory fonts. The caller is responsible for registering and unregistering the loader.  | 
| CreateInMemoryFontFileReference  Creates a font file reference (IDWriteFontFile object) from an array of bytes.  | 
| CreateMonitorRenderingParams  Creates a rendering parameters object with default settings for the specified monitor. In most cases, this is the preferred way to create a rendering parameters object.  | 
| CreateNumberSubstitution  Creates a number substitution object using a locale name, substitution method, and an indicator whether to ignore user overrides (use NLS defaults for the given culture instead).  | 
| CreateRemoteStreamFromKey  Creates a remote font file stream object that encapsulates an open file resource and can be used to download remote file data.  | 
| CreateRenderingParams  Creates a rendering parameters object with default settings for the primary monitor. Different monitors may have different rendering parameters, for more information see the How to Add Support for Multiple Monitors topic.  | 
| CreateStreamFromKey  Creates a font file stream object that encapsulates an open file resource.  | 
| CreateTextAnalyzer  Returns an interface for performing text analysis.  | 
| CreateTextFormat  Creates a text format object used for text layout. (IDWriteFactory.CreateTextFormat)  | 
| CreateTextFormat  Creates a text format object used for text layout.I  | 
| CreateTextLayout  Takes a string, text format, and associated constraints, and produces an object that represents the fully analyzed and formatted result.  | 
| CreateTypography  Creates a typography object for use in a text layout.  | 
| DetermineMinWidth  Determines the minimum possible width the layout can be set to without emergency breaking between the characters of whole words occurring.  | 
| DownloadCompleted  The DownloadCompleted method is called back on an arbitrary thread when a download operation ends.  | 
| Draw  The application implemented rendering callback (IDWriteTextRenderer::DrawInlineObject) can use this to draw the inline object without needing to cast or query the object type. The text layout does not call this method directly.  | 
| Draw  Draws text using the specified client drawing context.  | 
| DrawGlyphRun  Draws a run of glyphs to a bitmap target at the specified position.  | 
| DrawGlyphRun  IDWriteTextLayout::Draw calls this function to instruct the client to render a run of glyphs. (IDWriteTextRenderer.DrawGlyphRun)  | 
| DrawGlyphRun  IDWriteTextLayout::Draw calls this function to instruct the client to render a run of glyphs. (IDWriteTextRenderer1.DrawGlyphRun)  | 
| DrawInlineObject  IDWriteTextLayout::Draw calls this application callback when it needs to draw an inline object. (IDWriteTextRenderer.DrawInlineObject)  | 
| DrawInlineObject  IDWriteTextLayout::Draw calls this application callback when it needs to draw an inline object. (IDWriteTextRenderer1.DrawInlineObject)  | 
| DrawStrikethrough  IDWriteTextLayout::Draw calls this function to instruct the client to draw a strikethrough. (IDWriteTextRenderer.DrawStrikethrough)  | 
| DrawStrikethrough  IDWriteTextLayout::Draw calls this function to instruct the client to draw a strikethrough. (IDWriteTextRenderer1.DrawStrikethrough)  | 
| DrawUnderline  IDWriteTextLayout::Draw calls this function to instruct the client to draw an underline. (IDWriteTextRenderer.DrawUnderline)  | 
| DrawUnderline  IDWriteTextLayout::Draw calls this function to instruct the client to draw an underline. (IDWriteTextRenderer1.DrawUnderline)  | 
| DWRITE_MAKE_FONT_AXIS_TAG  Creates an OpenType tag for a font axis.  | 
| DWRITE_MAKE_OPENTYPE_TAG  Creates an OpenType tag as a 32-bit integer, such that the first character in the tag is the lowest byte (least significant on little endian architectures), which can be used to compare with tags in the font file.  | 
| DWriteCreateFactory  Creates a DirectWrite factory object that is used for subsequent creation of individual DirectWrite objects.  | 
| EnqueueCharacterDownloadRequest  Adds a request to the font download queue (IDWriteFontDownloadQueue). (IDWriteFontFaceReference.EnqueueCharacterDownloadRequest)  | 
| EnqueueFileFragmentDownloadRequest  Adds a request to the font download queue (IDWriteFontDownloadQueue). (IDWriteFontFaceReference.EnqueueFileFragmentDownloadRequest)  | 
| EnqueueFontDownloadRequest  Adds a request to the font download queue (IDWriteFontDownloadQueue). (IDWriteFontFaceReference.EnqueueFontDownloadRequest)  | 
| EnqueueGlyphDownloadRequest  Adds a request to the font download queue (IDWriteFontDownloadQueue). (IDWriteFontFaceReference.EnqueueGlyphDownloadRequest)  | 
| Equals  Compares two instances of font references for equality.  | 
| Equals  Performs an equality comparison between the font face object on which Equals is being called and the font face object passed as a parameter.  | 
| FindFamilyName  Finds the font family with the specified family name.  | 
| FindFontFace  Gets the index of the matching font face reference in the font set, with the same file, face index, and simulations. (IDWriteFontSet.FindFontFace)  | 
| FindFontFaceReference  Gets the index of the matching font face reference in the font set, with the same file, face index, and simulations. (IDWriteFontSet.FindFontFaceReference)  | 
| FindLocaleName  Gets the zero-based index of the locale name/string pair with the specified locale name.  | 
| GetAlphaBlendParams  Gets alpha blending properties required for ClearType blending.  | 
| GetAlphaTextureBounds  Gets the bounding rectangle of the physical pixels affected by the glyph run.  | 
| GetAutomaticFontAxes  Retrieves the automatic axis options.  | 
| GetAxisNames  Retrieves the localized names of a font axis.  | 
| GetAxisValueNameCount  Retrieves the number of named values for a specific axis.  | 
| GetAxisValueNames  Retrieves the localized names of specific values for a font axis.  | 
| GetBaseline  Retrieves the given baseline from the font.  | 
| GetBreakConditions  Layout uses this to determine the line-breaking behavior of the inline object among the text.  | 
| GetCaretMetrics  Gets caret metrics for the font in design units.  | 
| GetCharacterSpacing  Gets the spacing between characters.  | 
| GetClearTypeLevel  Gets the ClearType level of the rendering parameters object.  | 
| GetClusterMetrics  Retrieves logical properties and measurements of each glyph cluster.  | 
| GetColorPaletteCount  Gets the number of color palettes defined by the font.  | 
| GetCount  Gets the number of language/string pairs.  | 
| GetCount  Gets the number of strings in the string list.  | 
| GetCurrentFontFile  Gets a reference to the current font file.  | 
| GetCurrentRun  Gets the current color glyph run.  | 
| GetCurrentRun  Returns the current glyph run of the enumerator.  | 
| GetCurrentTransform  Gets the transform that maps abstract coordinates to DIPs. By default this is the identity transform. Note that this is unrelated to the world transform of the underlying device context.  | 
| GetCurrentTransform  Gets a transform that maps abstract coordinates to DIPs.  | 
| GetDefaultFontAxisValues  Retrieves the default values for all axes supported by the font resource.  | 
| GetDesignGlyphAdvances  Retrieves the advances in design units for a sequences of glyphs.  | 
| GetDesignGlyphMetrics  Obtains ideal (resolution-independent) glyph metrics in font design units.  | 
| GetDrawingEffect  Gets the application-defined drawing effect at the specified text position.  | 
| GetEnhancedContrast  Gets the enhanced contrast property of the rendering parameters object. Valid values are greater than or equal to zero.  | 
| GetEudcFontCollection  Gets a font collection representing the set of EUDC (end-user defined characters) fonts.  | 
| GetExpirationEvent  Retrieves the expiration event for the font set, if any. The expiration event is set on a system font set object if it is out of date due to fonts being installed, uninstalled, or updated. (IDWriteFontCollection3::GetExpirationEvent)  | 
| GetExpirationEvent  Retrieves the expiration event for the font set, if any. The expiration event is set on a system font set object if it is out of date due to fonts being installed, uninstalled, or updated. (IDWriteFontSet2::GetExpirationEvent)  | 
| GetFaceNames  Gets a localized strings collection containing the face names for the font (such as Regular or Bold), indexed by locale name.  | 
| GetFaceNames  Creates a localized strings object that contains the face names for the font (for example, Regular or Bold), indexed by locale name.  | 
| GetFamilyNames  Creates a localized strings object that contains the family names for the font family, indexed by locale name. (IDWriteFontFamily.GetFamilyNames)  | 
| GetFamilyNames  Creates a localized strings object that contains the family names for the font family, indexed by locale name. (IDWriteFontFace3.GetFamilyNames)  | 
| GetFileCount  Returns the number of font file references that have been created using this loader instance.  | 
| GetFileFragmentLocality  Returns information about the locality of a byte range (i.e., font fragment) within the font file stream.  | 
| GetFilePathFromKey  Obtains the absolute font file path from the font file reference key.  | 
| GetFilePathLengthFromKey  Obtains the length of the absolute file path from the font file reference key.  | 
| GetFiles  Obtains the font files representing a font face.  | 
| GetFileSize  Obtains the total size of a file.  | 
| GetFileSize  Get the total size of the font face in bytes.  | 
| GetFileTime  Get the last modified date.  | 
| GetFilteredFontIndices  Retrieves all the item indices, filtered by the given ranges.  | 
| GetFilteredFonts  Retrieves a subset of fonts filtered by the given ranges, endpoint-inclusive.  | 
| GetFilteredFonts  Retrieves a subset of fonts filtered by the given properties.  | 
| GetFilteredFonts  Retrieves a subset of fonts, filtered by the given indices.  | 
| GetFirstFontResources  Retrieves a new font set that contains only the first occurrence of each font resource from the set.  | 
| GetFirstMatchingFont  Gets the font that best matches the specified properties.  | 
| GetFlowDirection  Gets the direction that text lines flow.  | 
| GetFont  Gets a font given its zero-based index. (IDWriteFontList.GetFont)  | 
| GetFont  Gets a font given its zero-based index. (IDWriteFontFamily1.GetFont)  | 
| GetFont  Gets a font given its zero-based index. (IDWriteFontList1.GetFont)  | 
| GetFontAxisAttributes  Retrieves attributes describing the given axis, such as whether the font author recommends to hide the axis in user interfaces.  | 
| GetFontAxisCount  Retrieves the number of axes supported by the font resource.  | 
| GetFontAxisRanges  Retrieves the value ranges of each axis.  | 
| GetFontAxisRanges  Retrieves the axis ranges of a single item.  | 
| GetFontAxisValueCount  Retrieves the number of axes defined by the font. This includes both static and variable axes.  | 
| GetFontAxisValueCount  Retrieves the number of axes specified by the reference.  | 
| GetFontAxisValueCount  Retrieves the number of axes set on the format.  | 
| GetFontAxisValues  Retrieves the list of axis values used by the font.  | 
| GetFontAxisValues  Retrieves the list of font axis values specified by the reference.  | 
| GetFontAxisValues  Retrieves the list of font axis values on the format.  | 
| GetFontCollection  Gets the font collection that contains the fonts in the font list.  | 
| GetFontCollection  Gets the current font collection.  | 
| GetFontCollection  Gets the font collection associated with the text at the specified position.  | 
| GetFontCount  Gets the number of fonts in the font list.  | 
| GetFontCount  Get the number of total fonts in the set.  | 
| GetFontDownloadQueue  Gets the font download queue associated with this factory object.  | 
| GetFontFaceIndex  Obtains 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.  | 
| GetFontFaceIndex  Retrieves the zero-based index of the font face within its font file.  | 
| GetFontFaceReference  Gets a font face reference that identifies this font. (IDWriteFont3.GetFontFaceReference)  | 
| GetFontFaceReference  Gets a font face reference that identifies this font. (IDWriteFontFace3.GetFontFaceReference)  | 
| GetFontFaceReference  Gets a font face reference given its zero-based index. (IDWriteFontFamily1.GetFontFaceReference)  | 
| GetFontFaceReference  Gets a font face reference given its zero-based index. (IDWriteFontList1.GetFontFaceReference)  | 
| GetFontFaceReference  Gets a reference to the font at the specified index, which may be local or remote.  | 
| GetFontFaceReference  Retrieves the font face reference of a single item.  | 
| GetFontFallback  Gets the current fallback. If none was ever set since creating the layout, it will be nullptr.  | 
| GetFontFallback  Get the current font fallback object.  | 
| GetFontFamily  Gets the font family to which the specified font belongs.  | 
| GetFontFamily  Creates a font family object given a zero-based font family index.  | 
| GetFontFamily  Creates a font family object, given a zero-based font family index.  | 
| GetFontFamilyCount  Gets the number of font families in the collection.  | 
| GetFontFamilyModel  Retrieves the font family model used by the font collection to group families.  | 
| GetFontFamilyName  Gets a copy of the font family name.  | 
| GetFontFamilyName  Copies the font family name of the text at the specified position.  | 
| GetFontFamilyNameLength  Gets the length of the font family name.  | 
| GetFontFamilyNameLength  Get the length of the font family name at the current position.  | 
| GetFontFeature  Gets the font feature at the specified index.  | 
| GetFontFeatureCount  Gets the number of OpenType font features for the current font.  | 
| GetFontFile  Obtains the font file representing a font face.  | 
| GetFontFile  Retrieves the font file of the resource.  | 
| GetFontFromFontFace  Gets the font object that corresponds to the same physical font as the specified font face object. The specified physical font must belong to the font collection.  | 
| GetFontLocality  Gets the current location of a font given its zero-based index. (IDWriteFontFamily1.GetFontLocality)  | 
| GetFontLocality  Gets the current location of a font given its zero-based index. (IDWriteFontList1.GetFontLocality)  | 
| GetFontLocality  Retrieves the locality of a single item.  | 
| GetFontResource  Retrieves the underlying font resource for this font face.  | 
| GetFontSet  Gets the underlying font set used by this collection.  | 
| GetFontSet  Retrieves the underlying font set used by this collection.  | 
| GetFontSet  Retrieves the underlying font set used by this family.  | 
| GetFontSet  Retrieves the underlying font set used by this list.  | 
| GetFontSignature  Reads the font signature from the given font. (overload 2/2)  | 
| GetFontSignature  Reads the font signature from the given font. (overload 1/2)  | 
| GetFontSize  Gets the font size in DIP unites.  | 
| GetFontSize  Gets the font em height of the text at the specified position.  | 
| GetFontSourceName  Copies the font source name (for the specified font) into an output array.  | 
| GetFontSourceNameLength  Retrieves the length of the font source name for the specified font.  | 
| GetFontSourceType  Retrieves the font source type of the specified font.  | 
| GetFontStretch  Gets the font stretch of the text.  | 
| GetFontStretch  Gets the font stretch of the text at the specified position.  | 
| GetFontStyle  Gets the font style of the text.  | 
| GetFontStyle  Gets the font style (also known as slope) of the text at the specified position.  | 
| GetFontWeight  Gets the font weight of the text.  | 
| GetFontWeight  Gets the font weight of the text at the specified position.  | 
| GetGamma  Gets the gamma value used for gamma correction. Valid values must be greater than zero and cannot exceed 256.  | 
| GetGdiCompatibleGlyphAdvances  Returns the pixel-aligned advances for a sequences of glyphs.  | 
| GetGdiCompatibleGlyphMetrics  Obtains glyph metrics in font design units with the return values compatible with what GDI would produce.  | 
| GetGdiCompatibleGlyphPlacements  Place glyphs output from the GetGlyphs method according to the font and the writing system's rendering rules.  | 
| GetGdiCompatibleMetrics  Obtains design units and common metrics for the font face. These metrics are applicable to all the glyphs within a fontface and are used by applications for layout calculations. (IDWriteFontFace.GetGdiCompatibleMetrics)  | 
| GetGdiCompatibleMetrics  Obtains design units and common metrics for the font face. These metrics are applicable to all the glyphs within a fontface and are used by applications for layout calculations. (IDWriteFontFace1.GetGdiCompatibleMetrics)  | 
| GetGdiInterop  Creates an object that is used for interoperability with GDI.  | 
| GetGenerationCount  Gets the current generation number of the download queue, which is incremented every time after a download completes, whether failed or successful. This cookie value can be compared against cached data to determine if it is stale.  | 
| GetGlyphCount  Obtains the number of glyphs in the font face.  | 
| GetGlyphImageData  Gets a pointer to the glyph data based on the desired image format.  | 
| GetGlyphImageFormats  Gets all the glyph image formats supported by the entire font. (IDWriteFontFace4.GetGlyphImageFormats)  | 
| GetGlyphImageFormats  Gets all the glyph image formats supported by the entire font. (overload 1/2)  | 
| GetGlyphIndices  Returns the nominal mapping of UCS4 Unicode code points to glyph indices as defined by the font 'CMAP' table.  | 
| GetGlyphOrientationTransform  Returns 2x3 transform matrix for the respective angle to draw the glyph run. (IDWriteTextAnalyzer1.GetGlyphOrientationTransform)  | 
| GetGlyphOrientationTransform  Returns 2x3 transform matrix for the respective angle to draw the glyph run. (IDWriteTextAnalyzer2.GetGlyphOrientationTransform)  | 
| GetGlyphPlacements  Places glyphs output from the GetGlyphs method according to the font and the writing system's rendering rules.  | 
| GetGlyphRunOutline  Computes the outline of a run of glyphs by calling back to the outline sink interface.  | 
| GetGlyphs  Parses the input text string and maps it to the set of glyphs and associated glyph data according to the font and the writing system's rendering rules.  | 
| GetGrayscaleEnhancedContrast  Gets the amount of contrast enhancement to use for grayscale antialiasing.  | 
| GetGridFitMode  Gets the grid fitting mode.  | 
| GetIncrementalTabStop  Gets the incremental tab stop position.  | 
| GetIndex  Obtains the index of a font face in the context of its font files.  | 
| GetInformationalStrings  Gets a localized strings collection containing the specified informational strings, indexed by locale name.  | 
| GetInformationalStrings  Gets a localized strings collection that contains the specified informational strings, indexed by locale name.  | 
| GetInlineObject  Gets the inline object at the specified position.  | 
| GetJustificationOpportunities  Retrieves justification opportunity information for each of the glyphs given the text and shaping glyph properties.  | 
| GetJustifiedGlyphs  Fills in new glyphs for complex scripts where justification increased the advances of glyphs, such as Arabic with kashida.  | 
| GetKerningPairAdjustments  Retrieves the kerning pair adjustments from the font's kern table.  | 
| GetLastLineWrapping  Gets the wrapping mode of the last line.  | 
| GetLastLineWrapping  Get whether or not the last word on the last line is wrapped.  | 
| GetLastWriteTime  Obtains the last modified time of the file.  | 
| GetLastWriteTimeFromKey  Obtains the last write time of the file from the font file reference key.  | 
| GetLineMetrics  Retrieves the information about each individual text line of the text string.  | 
| GetLineMetrics  Retrieves properties of each line.  | 
| GetLineSpacing  Gets the line spacing adjustment set for a multiline text paragraph. (IDWriteTextFormat.GetLineSpacing)  | 
| GetLineSpacing  Gets the line spacing adjustment set for a multiline text paragraph. (IDWriteTextFormat2.GetLineSpacing)  | 
| GetLineSpacing  Gets line spacing information.  | 
| GetLoader  Obtains the file loader associated with a font file object.  | 
| GetLocaleName  Copies the locale name with the specified index to the specified array. (IDWriteLocalizedStrings.GetLocaleName)  | 
| GetLocaleName  Gets the locale name on the range affected by the text analysis.  | 
| GetLocaleName  Gets a copy of the locale name.  | 
| GetLocaleName  Gets the locale name of the text at the specified position.  | 
| GetLocaleName  Copies the locale name with the specified index to the specified array. (IDWriteStringList.GetLocaleName)  | 
| GetLocaleNameLength  Gets the length in characters (not including the null terminator) of the locale name with the specified index. (IDWriteLocalizedStrings.GetLocaleNameLength)  | 
| GetLocaleNameLength  Gets the length of the locale name.  | 
| GetLocaleNameLength  Gets the length of the locale name of the text at the specified position.  | 
| GetLocaleNameLength  Gets the length in characters (not including the null terminator) of the locale name with the specified index. (IDWriteStringList.GetLocaleNameLength)  | 
| GetLocalFileSize  Get the local size of the font face in bytes, which will always be less than or equal to GetFullSize. If the locality is remote, this value is zero. If full, this value will equal GetFileSize.  | 
| GetLocalFileSize  GetLocalFileSize returns the number of bytes of the font file that are currently local, which should always be less than or equal to the full file size returned by GetFileSize.  | 
| GetLocality  Gets the current locality of the font.  | 
| GetLocality  Get the locality of this font face reference.  | 
| GetLocality  Gets the current locality of the file.  | 
| GetLocalityFromKey  Gets the locality of the file resource identified by the unique key.  | 
| GetMatchingFonts  Gets a list of fonts in the font family ranked in order of how well they match the specified properties.  | 
| GetMatchingFonts  Retrieves a list of fonts in the specified font family, ranked in order of how well they match the specified axis values.  | 
| GetMatchingFonts  Retrieves a list of fonts in the font family, ranked in order of how well they match the specified axis values.  | 
| GetMatchingFonts  Returns a subset of fonts filtered by the given properties. (overload 2/2)  | 
| GetMatchingFonts  Returns a subset of fonts filtered by the given properties. (overload 1/2)  | 
| GetMatchingFonts  Retrieves a matching font set based on the requested inputs, ordered so that nearer matches are earlier.  | 
| GetMatchingFonts  Generates a matching font set based on the requested inputs, ordered so that nearer matches are earlier.  | 
| GetMatchingFontsByLOGFONT  Gets a list of matching fonts based on the specified LOGFONT values. Only fonts of that family name will be returned.  | 
| GetMaxHeight  Gets the layout maximum height.  | 
| GetMaxWidth  Gets the layout maximum width.  | 
| GetMemoryDC  Gets a handle to the memory device context.  | 
| 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. (IDWriteFont.GetMetrics)  | 
| 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. (IDWriteFontFace.GetMetrics)  | 
| GetMetrics  IDWriteTextLayout calls this callback function to get the measurement of the inline object.  | 
| GetMetrics  Retrieves overall metrics for the formatted string. (IDWriteTextLayout.GetMetrics)  | 
| 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. (IDWriteFont1.GetMetrics)  | 
| 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. (IDWriteFontFace1.GetMetrics)  | 
| GetMetrics  Retrieves overall metrics for the formatted string. (IDWriteTextLayout2.GetMetrics)  | 
| GetNumberSubstitution  Gets the number substitution from the text range affected by the text analysis.  | 
| GetOpticalAlignment  Gets the optical margin alignment for the text format.  | 
| GetOpticalAlignment  Get how the glyphs align to the edges the margin.  | 
| GetOverhangMetrics  IDWriteTextLayout calls this callback function to get the visible extents (in DIPs) of the inline object. In the case of a simple bitmap, with no padding and no overhang, all the overhangs will simply be zeroes.  | 
| GetOverhangMetrics  Returns the overhangs (in DIPs) of the layout and all objects contained in it, including text glyphs and inline objects.  | 
| GetPairKerning  Gets whether or not pair-kerning is enabled at given position.  | 
| GetPaletteEntries  Gets color values from the font's color palette.  | 
| GetPaletteEntryCount  Get the number of entries in each color palette.  | 
| GetPanose  Gets the PANOSE values from the font and is used for font selection and matching.  | 
| GetPanose  Gets the PANOSE values from the font, used for font selection and matching.  | 
| GetParagraphAlignment  Gets the alignment option of a paragraph which is relative to the top and bottom edges of a layout box.  | 
| GetParagraphReadingDirection  Gets the paragraph reading direction.  | 
| GetPixelGeometry  Gets the pixel geometry of the rendering parameters object.  | 
| GetPixelsPerDip  Gets the number of bitmap pixels per DIP.  | 
| GetPixelsPerDip  Gets the number of physical pixels per DIP.  | 
| GetPropertyOccurrenceCount  Returns how many times a given property value occurs in the set.  | 
| GetPropertyValues  Returns the property values of a specific font item index. (overload 2/3)  | 
| GetPropertyValues  Returns the property values of a specific font item index. (overload 1/3)  | 
| GetPropertyValues  Returns the property values of a specific font item index. (overload 3/3)  | 
| GetReadingDirection  Gets the current reading direction for text in a paragraph.  | 
| GetRecommendedRenderingMode  Determines the recommended rendering mode for the font, using the specified size and rendering parameters. (IDWriteFontFace.GetRecommendedRenderingMode)  | 
| GetRecommendedRenderingMode  Determines the recommended rendering mode for the font, using the specified size and rendering parameters. (IDWriteFontFace1.GetRecommendedRenderingMode)  | 
| GetRecommendedRenderingMode  Determines the recommended text rendering and grid-fit mode to be used based on the font, size, world transform, and measuring mode. (IDWriteFontFace3.GetRecommendedRenderingMode)  | 
| GetRecommendedRenderingMode  Determines the recommended text rendering and grid-fit mode to be used based on the font, size, world transform, and measuring mode. (IDWriteFontFace2.GetRecommendedRenderingMode)  | 
| GetReferenceKey  Obtains the pointer to the reference key of a font file. The returned pointer is valid until the font file object is released.  | 
| GetRenderingMode  Gets the rendering mode of the rendering parameters object.  | 
| GetRenderingMode1  Gets the rendering mode.  | 
| GetResult  Returns the result of the asynchronous operation. The return value is E_PENDING if the operation has not yet completed.  | 
| GetScriptProperties  Retrieves the properties for a given script.  | 
| GetSimulations  Gets a value that indicates what simulations are applied to the specified font.  | 
| GetSimulations  Obtains the algorithmic style simulation flags of a font face. (IDWriteFontFace.GetSimulations)  | 
| GetSimulations  Obtains the algorithmic style simulation flags of a font face. (IDWriteFontFaceReference.GetSimulations)  | 
| GetSize  Gets the dimensions of the target bitmap.  | 
| GetStretch  Gets the stretch, or width, of the specified font.  | 
| GetStretch  Gets the stretch (also known as width) of this font.  | 
| GetStrikethrough  Get the strikethrough presence of the text at the specified position.  | 
| GetString  Copies the string with the specified index to the specified array. (IDWriteLocalizedStrings.GetString)  | 
| GetString  Copies the string with the specified index to the specified array. (IDWriteStringList.GetString)  | 
| GetStringLength  Gets the length in characters (not including the null terminator) of the string with the specified index. (IDWriteLocalizedStrings.GetStringLength)  | 
| GetStringLength  Gets the length in characters (not including the null terminator) of the string with the specified index. (IDWriteStringList.GetStringLength)  | 
| GetStyle  Gets the style, or slope, of the specified font.  | 
| GetStyle  Gets the style (also known as slope) of this font.  | 
| GetSystemFontCollection  Gets an object which represents the set of installed fonts.  | 
| GetSystemFontCollection  Retrieves a weight/width/slope tree of system fonts.  | 
| GetSystemFontCollection  Retrieves a collection of fonts, grouped into families. (IDWriteFactory6::GetSystemFontCollection)  | 
| GetSystemFontCollection  Retrieves a collection of fonts, grouped into families. (IDWriteFactory7::GetSystemFontCollection)  | 
| GetSystemFontFallback  Creates a font fallback object from the system font fallback list.  | 
| GetSystemFontSet  Retrieves the list of system fonts.  | 
| GetSystemFontSet  Retrieves the set of system fonts. (IDWriteFactory6::GetSystemFontSet)  | 
| GetSystemFontSet  Retrieves the set of system fonts. (IDWriteFactory7::GetSystemFontSet)  | 
| GetTextAlignment  Gets the alignment option of text relative to the layout box's leading and trailing edge.  | 
| GetTextAntialiasMode  Gets the current text antialiasing mode of the bitmap render target.  | 
| GetTextAtPosition  Gets a block of text starting at the specified text position.  | 
| GetTextBeforePosition  Gets a block of text immediately preceding the specified position.  | 
| GetTextComplexity  Determines the complexity of text, and whether you need to call IDWriteTextAnalyzer::GetGlyphs for full script shaping.  | 
| GetTrimming  Gets the trimming options for text that overflows the layout box.  | 
| GetType  Obtains the file format type of a font face.  | 
| GetTypographicFeatures  Returns a complete list of OpenType features available for a script or font.  | 
| GetTypography  Gets the typography setting of the text at the specified position.  | 
| GetUnderline  Gets the underline presence of the text at the specified position.  | 
| GetUnicodeRanges  Retrieves the list of character ranges supported by a font.  | 
| GetUnicodeRanges  Retrieves a list of character ranges supported by a font.  | 
| GetVerticalGlyphOrientation  Used by the text analyzer to obtain the desired glyph orientation and resolved bidi level.  | 
| GetVerticalGlyphOrientation  Get the preferred orientation of glyphs when using a vertical reading direction. (IDWriteTextFormat1.GetVerticalGlyphOrientation)  | 
| GetVerticalGlyphOrientation  Get the preferred orientation of glyphs when using a vertical reading direction. (IDWriteTextLayout2.GetVerticalGlyphOrientation)  | 
| GetVerticalGlyphVariants  Retrieves the vertical forms of the nominal glyphs retrieved from GetGlyphIndices.  | 
| GetWaitHandle  Returns a handle that can be used to wait for the asynchronous operation to complete. The handle remains valid until the interface is released.  | 
| GetWeight  Gets the weight, or stroke thickness, of the specified font.  | 
| GetWeight  Gets the weight of this font.  | 
| GetWordWrapping  Gets the word wrapping option.  | 
| HasCharacter  Determines whether the font supports a specified character.  | 
| HasCharacter  Determines whether the font supports the specified character.  | 
| HasKerningPairs  Determines whether the font supports pair-kerning.  | 
| HasVariations  Determines whether this font face's resource supports any variable axes. (IDWriteFontFace5::HasVariations)  | 
| HasVariations  Determines whether this font face's resource supports any variable axes. (IDWriteFontResource::HasVariations)  | 
| HasVerticalGlyphVariants  Determines whether the font has any vertical glyph variants.  | 
| HitTestPoint  The application calls this function passing in a specific pixel location relative to the top-left location of the layout box and obtains the information about the correspondent hit-test metrics of the text string where the hit-test has occurred.  | 
| HitTestTextPosition  The application calls this function to get the pixel location relative to the top-left of the layout box given the text position and the logical side of the position.  | 
| HitTestTextRange  The application calls this function to get a set of hit-test metrics corresponding to a range of text positions. One of the main usages is to implement highlight selection of the text string.  | 
| InvalidateLayout  Invalidates the layout, forcing layout to remeasure before calling the metrics or drawing functions. This is useful if the locality of a font changes, and layout should be redrawn, or if the size of a client implemented IDWriteInlineObject changes.  | 
| IsCharacterLocal  Determines whether the character is locally downloaded from the font.  | 
| IsColorFont  Enables determining whether a color rendering path is potentially necessary.  | 
| IsColorFont  Allows you to determine if a color rendering path is potentially necessary.  | 
| IsEmpty  Determines whether the download queue is empty. Note that the queue does not include requests that are already being downloaded. Calling BeginDownloadclears the queue.  | 
| IsGlyphLocal  Determines whether the glyph is locally downloaded from the font.  | 
| IsMonospacedFont  Determines if the font is monospaced, that is, the characters are the same fixed-pitch width (non-proportional).  | 
| IsMonospacedFont  Determines whether the font of a text range is monospaced, that is, the font characters are the same fixed-pitch width.  | 
| IsSymbolFont  Determines whether the font is a symbol font. (IDWriteFont.IsSymbolFont)  | 
| IsSymbolFont  Determines whether the font is a symbol font. (IDWriteFontFace.IsSymbolFont)  | 
| JustifyGlyphAdvances  Justifies an array of glyph advances to fit the line width.  | 
| MapCharacters  Determines an appropriate font to use to render the beginning range of text.  | 
| MoveNext  Advances to the next font file in the collection. When it is first created, the enumerator is positioned before the first element of the collection and the first call to MoveNext advances to the first file.  | 
| MoveNext  Move to the next glyph run in the enumerator.  | 
| ReadFileFragment  Reads a fragment from a font file.  | 
| RegisterFontCollectionLoader  Registers a custom font collection loader with the factory object.  | 
| RegisterFontFileLoader  Registers a font file loader with DirectWrite.  | 
| ReleaseFileFragment  Releases a fragment from a file.  | 
| ReleaseFontTable  Releases the table obtained earlier from TryGetFontTable.  | 
| ReleaseGlyphImageData  Releases the table data obtained from ReadGlyphData.  | 
| RemoveListener  Unregisters a notification handler that was previously registered using AddListener.  | 
| Resize  Resizes the bitmap.  | 
| SetAutomaticFontAxes  Sets the automatic font axis options.  | 
| SetBidiLevel  Sets a bidirectional level on the range, which is called once per run change (either explicit or resolved implicit).  | 
| SetCharacterSpacing  Sets the spacing between characters.  | 
| SetCurrentTransform  Sets the transform that maps abstract coordinate to DIPs (device-independent pixel). This does not affect the world transform of the underlying device context.  | 
| SetDrawingEffect  Sets the application-defined drawing effect.  | 
| SetFlowDirection  Sets the paragraph flow direction.  | 
| SetFontAxisValues  Sets values for the font axes of the format.  | 
| SetFontCollection  Sets the font collection.  | 
| SetFontFallback  Applies the custom font fallback onto the layout. If none is set, it uses the default system fallback list.  | 
| SetFontFallback  Apply a custom font fallback onto layout.  | 
| SetFontFamilyName  Sets null-terminated font family name for text within a specified text range.  | 
| SetFontSize  Sets the font size in DIP units for text within a specified text range.  | 
| SetFontStretch  Sets the font stretch for text within a specified text range.  | 
| SetFontStyle  Sets the font style for text within a text range specified by a DWRITE_TEXT_RANGE structure.  | 
| SetFontWeight  Sets the font weight for text within a text range specified by a DWRITE_TEXT_RANGE structure.  | 
| SetGlyphOrientation  The text analyzer calls back to this to report the actual orientation of each character for shaping and drawing.  | 
| SetIncrementalTabStop  Sets a fixed distance between two adjacent tab stops.  | 
| SetInlineObject  Sets the inline object.  | 
| SetLastLineWrapping  Sets the wrapping mode of the last line.  | 
| SetLastLineWrapping  Set whether or not the last word on the last line is wrapped.  | 
| SetLineBreakpoints  Sets line-break opportunities for each character, starting from the specified position.  | 
| SetLineSpacing  Sets the line spacing.  | 
| SetLineSpacing  Set line spacing. (IDWriteTextFormat2.SetLineSpacing)  | 
| SetLineSpacing  Set line spacing. (IDWriteTextLayout3.SetLineSpacing)  | 
| SetLocaleName  Sets the locale name for text within a specified text range.  | 
| SetMaxHeight  Sets the layout maximum height.  | 
| SetMaxWidth  Sets the layout maximum width.  | 
| SetNumberSubstitution  Sets the number substitution on the text range affected by the text analysis.  | 
| SetOpticalAlignment  Sets the optical margin alignment for the text format.  | 
| SetOpticalAlignment  Set how the glyphs align to the edges the margin.  | 
| SetPairKerning  Enables or disables pair-kerning on a given text range.  | 
| SetParagraphAlignment  Sets the alignment option of a paragraph relative to the layout box's top and bottom edge.  | 
| SetPixelsPerDip  Sets the number of bitmap pixels per DIP (device-independent pixel). A DIP is 1/96 inch, so this value is the number if pixels per inch divided by 96.  | 
| SetReadingDirection  Sets the paragraph reading direction.  | 
| SetScriptAnalysis  Reports script analysis for the specified text range.  | 
| SetStrikethrough  Sets strikethrough for text within a specified text range.  | 
| SetTextAlignment  Sets the alignment of text in a paragraph, relative to the leading and trailing edge of a layout box for a IDWriteTextFormat interface.  | 
| SetTextAntialiasMode  Sets the current text antialiasing mode of the bitmap render target.  | 
| SetTrimming  Sets trimming options for text overflowing the layout width.  | 
| SetTypography  Sets font typography features for text within a specified text range.  | 
| SetUnderline  Sets underlining for text within a specified text range.  | 
| SetVerticalGlyphOrientation  Sets the orientation of a text format.  | 
| SetVerticalGlyphOrientation  Set the preferred orientation of glyphs when using a vertical reading direction.  | 
| SetWordWrapping  Sets the word wrapping option.  | 
| TranslateColorGlyphRun  Translates a glyph run to a sequence of color glyph runs, which can be rendered to produce a color representation of the original "base" run.  | 
| TranslateColorGlyphRun  This method is called on a glyph run to translate it in to multiple color glyph runs.  | 
| TryGetFontTable  Finds the specified OpenType font table if it exists and returns a pointer to it. The function accesses the underlying font data through the IDWriteFontFileStream interface implemented by the font file loader.  | 
| UnpackFontFile  The UnpackFontFile method unpacks font data from a container file (WOFF or WOFF2) and returns the unpacked font data in the form of a font file stream.  | 
| UnregisterFontCollectionLoader  Unregisters a custom font collection loader that was previously registered using RegisterFontCollectionLoader.  | 
| UnregisterFontFileLoader  Unregisters a font file loader that was previously registered with the DirectWrite font system using RegisterFontFileLoader.  | 
Interfaces
| IDWriteAsyncResult  Represents the result of an asynchronous operation. A client can use the interface to wait for the operation to complete and to get the result.  | 
| IDWriteBitmapRenderTarget  Encapsulates a 32-bit device independent bitmap and device context, which can be used for rendering glyphs.  | 
| IDWriteBitmapRenderTarget1  Encapsulates a 32-bit device independent bitmap and device context, which you can use for rendering glyphs.  | 
| IDWriteColorGlyphRunEnumerator  This interface allows the application to enumerate through the color glyph runs.  | 
| IDWriteColorGlyphRunEnumerator1  Enumerator for an ordered collection of color glyph runs.  | 
| IDWriteFactory  Used to create all subsequent DirectWrite objects. This interface is the root factory interface for all DirectWrite objects.  | 
| IDWriteFactory1  The root factory interface for all DirectWrite objects. (IDWriteFactory1)  | 
| IDWriteFactory2  The root factory interface for all DirectWrite objects.I  | 
| IDWriteFactory3  The root factory interface for all DirectWrite objects. (IDWriteFactory3)  | 
| IDWriteFactory4  The root factory interface for all DirectWrite objects. (IDWriteFactory4)  | 
| IDWriteFactory5  The root factory interface for all DirectWrite objects. (IDWriteFactory5)  | 
| IDWriteFactory6  This interface represents a factory object from which all DirectWrite objects are created. IDWriteFactory6 adds new facilities for working with fonts and font resources.  | 
| IDWriteFactory7  This interface represents a factory object from which all DirectWrite objects are created. IDWriteFactory7 adds new facilities for working with system fonts.  | 
| IDWriteFont  Represents a physical font in a font collection. This interface is used to create font faces from physical fonts, or to retrieve information such as font face metrics or face names from existing font faces.  | 
| IDWriteFont1  Represents a physical font in a font collection. (IDWriteFont1)  | 
| IDWriteFont2  Represents a physical font in a font collection. (IDWriteFont2)  | 
| IDWriteFont3  Represents a font in a font collection.  | 
| IDWriteFontCollection  An object that encapsulates a set of fonts, such as the set of fonts installed on the system, or the set of fonts in a particular directory. (IDWriteFontCollection)  | 
| IDWriteFontCollection1  An object that encapsulates a set of fonts, such as the set of fonts installed on the system, or the set of fonts in a particular directory. (IDWriteFontCollection1)  | 
| IDWriteFontCollection2  This interface encapsulates a set of fonts, such as the set of fonts installed on the system, or the set of fonts in a particular directory. The font collection API can be used to discover what font families and fonts are available, and to obtain some metadata about the fonts. (IDWriteFontCollection2)  | 
| IDWriteFontCollection3  This interface encapsulates a set of fonts, such as the set of fonts installed on the system, or the set of fonts in a particular directory. The font collection API can be used to discover what font families and fonts are available, and to obtain some metadata about the fonts. (IDWriteFontCollection3)  | 
| IDWriteFontCollectionLoader  Used to construct a collection of fonts given a particular type of key.  | 
| IDWriteFontDownloadListener  Application-defined callback interface that receives notifications from the font download queue (IDWriteFontDownloadQueue interface).  | 
| IDWriteFontDownloadQueue  Interface that enqueues download requests for remote fonts, characters, glyphs, and font fragments.  | 
| IDWriteFontFace  This interface exposes various font data such as metrics, names, and glyph outlines. It contains font face type, appropriate file references, and face identification data.  | 
| IDWriteFontFace1  Contains font face type, appropriate file references, and face identification data. (IDWriteFontFace1)  | 
| IDWriteFontFace2  Contains font face type, appropriate file references, and face identification data. (IDWriteFontFace2)  | 
| IDWriteFontFace3  Contains font face type, appropriate file references, and face identification data. (IDWriteFontFace3)  | 
| IDWriteFontFace4  Contains font face type, appropriate file references, and face identification data. (IDWriteFontFace4)  | 
| IDWriteFontFace5  Contains font face type, appropriate file references, and face identification data. (IDWriteFontFace5)  | 
| IDWriteFontFaceReference  Represents a reference to a font face.  | 
| IDWriteFontFaceReference1  Represents a reference to a font face. A uniquely identifying reference to a font, from which you can create a font face to query font metrics and use for rendering.  | 
| IDWriteFontFallback  Allows you to access fallback fonts from the font list.  | 
| IDWriteFontFallback1  Allows you to access fallback fonts from the font list.  | 
| IDWriteFontFallbackBuilder  Allows you to create Unicode font fallback mappings and create a font fall back object from those mappings.  | 
| IDWriteFontFamily  Represents a family of related fonts. (IDWriteFontFamily)  | 
| IDWriteFontFamily1  Represents a family of related fonts. (IDWriteFontFamily1)  | 
| IDWriteFontFamily2  Represents a family of related fonts. IDWriteFontFamily2 adds new facilities, including retrieving fonts by font axis values.  | 
| IDWriteFontFile  Represents a font file. Applications such as font managers or font viewers can call IDWriteFontFile::Analyze to find out if a particular file is a font file, and whether it is a font type that is supported by the font system.  | 
| IDWriteFontFileEnumerator  Encapsulates a collection of font files. The font system uses this interface to enumerate font files when building a font collection.  | 
| IDWriteFontFileLoader  Handles loading font file resources of a particular type from a font file reference key into a font file stream object.  | 
| IDWriteFontFileStream  Loads font file data from a custom font file loader.  | 
| IDWriteFontList  Represents a list of fonts. (IDWriteFontList)  | 
| IDWriteFontList1  Represents a list of fonts. (IDWriteFontList1)  | 
| IDWriteFontList2  Represents a list of fonts. IDWriteFontList2 adds new facilities, including retrieving the underlying font set used by the list.  | 
| IDWriteFontResource  Provides axis information for a font resource, and is used to create specific font face instances.  | 
| IDWriteFontSet  Represents a font set. (IDWriteFontSet)  | 
| IDWriteFontSet1  Represents a font set. (IDWriteFontSet1)  | 
| IDWriteFontSet2  Represents a font set. (IDWriteFontSet2)  | 
| IDWriteFontSet3  Represents a font set. (IDWriteFontSet3)  | 
| IDWriteFontSet4  Represents a font set. (IDWriteFontSet4)  | 
| IDWriteFontSetBuilder  Contains methods for building a font set. (IDWriteFontSetBuilder)  | 
| IDWriteFontSetBuilder1  Contains methods for building a font set. (IDWriteFontSetBuilder1)  | 
| IDWriteFontSetBuilder2  Contains methods for building a font set. (IDWriteFontSetBuilder2)  | 
| IDWriteGdiInterop  Provides interoperability with GDI, such as methods to convert a font face to a LOGFONT structure, or to convert a GDI font description into a font face. It is also used to create bitmap render target objects. (IDWriteGdiInterop)  | 
| IDWriteGdiInterop1  Provides interoperability with GDI, such as methods to convert a font face to a LOGFONT structure, or to convert a GDI font description into a font face. It is also used to create bitmap render target objects. (IDWriteGdiInterop1)  | 
| IDWriteGlyphRunAnalysis  Contains low-level information used to render a glyph run.  | 
| IDWriteInlineObject  Wraps an application-defined inline graphic, allowing DWrite to query metrics as if the graphic were a glyph inline with the text.  | 
| IDWriteInMemoryFontFileLoader  Represents a font file loader that can access in-memory fonts.  | 
| IDWriteLocalFontFileLoader  A built-in implementation of the IDWriteFontFileLoader interface, that operates on local font files and exposes local font file information from the font file reference key.  | 
| IDWriteLocalizedStrings  Represents a collection of strings indexed by locale name.  | 
| IDWriteNumberSubstitution  Holds the appropriate digits and numeric punctuation for a specified locale.  | 
| IDWritePixelSnapping  Defines the pixel snapping properties such as pixels per DIP(device-independent pixel) and the current transform matrix of a text renderer.  | 
| IDWriteRemoteFontFileLoader  Represents a font file loader that can access remote (i.e., downloadable) fonts.  | 
| IDWriteRemoteFontFileStream  Represents a font file stream, parts of which may be non-local.  | 
| IDWriteRenderingParams  Represents text rendering settings such as ClearType level, enhanced contrast, and gamma correction for glyph rasterization and filtering.  | 
| IDWriteRenderingParams1  Represents text rendering settings for glyph rasterization and filtering. (IDWriteRenderingParams1)  | 
| IDWriteRenderingParams2  Represents text rendering settings for glyph rasterization and filtering. (IDWriteRenderingParams2)  | 
| IDWriteRenderingParams3  Represents text rendering settings for glyph rasterization and filtering. (IDWriteRenderingParams3)  | 
| IDWriteStringList  Represents a collection of strings indexed by number.  | 
| IDWriteTextAnalysisSink  This interface is implemented by the text analyzer's client to receive the output of a given text analysis.  | 
| IDWriteTextAnalysisSink1  The interface you implement to receive the output of the text analyzers.  | 
| IDWriteTextAnalysisSource  Implemented by the text analyzer's client to provide text to the analyzer.  | 
| IDWriteTextAnalysisSource1  The interface you implement to provide needed information to the text analyzer, like the text and associated text properties.  | 
| IDWriteTextAnalyzer  Analyzes various text properties for complex script processing such as bidirectional (bidi) support for languages like Arabic, determination of line break opportunities, glyph placement, and number substitution.  | 
| IDWriteTextAnalyzer1  Analyzes various text properties for complex script processing. (IDWriteTextAnalyzer1)  | 
| IDWriteTextAnalyzer2  Analyzes various text properties for complex script processing. (IDWriteTextAnalyzer2)  | 
| IDWriteTextFormat  The IDWriteTextFormat interface describes the font and paragraph properties used to format text, and it describes locale information.  | 
| IDWriteTextFormat1  Describes the font and paragraph properties used to format text, and it describes locale information. (IDWriteTextFormat1)  | 
| IDWriteTextFormat2  Describes the font and paragraph properties used to format text, and it describes locale information. (IDWriteTextFormat2)  | 
| IDWriteTextFormat3  Describes the font and paragraph properties used to format text, and it describes locale information. (IDWriteTextFormat3)  | 
| IDWriteTextLayout  The IDWriteTextLayout interface represents a block of text after it has been fully analyzed and formatted.  | 
| IDWriteTextLayout1  Represents a block of text after it has been fully analyzed and formatted. (IDWriteTextLayout1)  | 
| IDWriteTextLayout2  Represents a block of text after it has been fully analyzed and formatted. (IDWriteTextLayout2)  | 
| IDWriteTextLayout3  Represents a block of text after it has been fully analyzed and formatted. (IDWriteTextLayout3)  | 
| IDWriteTextLayout4  Represents a block of text after it has been fully analyzed and formatted.  | 
| IDWriteTextRenderer  Represents a set of application-defined callbacks that perform rendering of text, inline objects, and decorations such as underlines. (IDWriteTextRenderer)  | 
| IDWriteTextRenderer1  Represents a set of application-defined callbacks that perform rendering of text, inline objects, and decorations such as underlines. (IDWriteTextRenderer1)  | 
| IDWriteTypography  Represents a font typography setting.  | 
Structures
| DWRITE_CARET_METRICS  The DWRITE_CARET_METRICS structure specifies the metrics for caret placement in a font.  | 
| DWRITE_CLUSTER_METRICS  Contains information about a glyph cluster.  | 
| DWRITE_COLOR_GLYPH_RUN  Contains the information needed by renderers to draw glyph runs with glyph color information.  | 
| DWRITE_COLOR_GLYPH_RUN1  Represents a color glyph run. The IDWriteFactory4::TranslateColorGlyphRun method returns an ordered collection of color glyph runs of varying types depending on what the font supports.  | 
| DWRITE_FILE_FRAGMENT  Represents a range of bytes in a font file.  | 
| DWRITE_FONT_AXIS_RANGE  Represents the minimum and maximum range of the possible values for a font axis.  | 
| DWRITE_FONT_AXIS_VALUE  Represents a value for a font axis. Used when querying and creating font instances.  | 
| DWRITE_FONT_FEATURE  Specifies properties used to identify and execute typographic features in the current font face.  | 
| DWRITE_FONT_METRICS  The DWRITE_FONT_METRICS structure specifies the metrics that are applicable to all glyphs within the font face.  | 
| DWRITE_FONT_METRICS1  The DWRITE_FONT_METRICS1 structure specifies the metrics that are applicable to all glyphs within the font face.  | 
| DWRITE_FONT_PROPERTY  Font property used for filtering font sets and building a font set with explicit properties.  | 
| DWRITE_GLYPH_IMAGE_DATA  Data for a single glyph from GetGlyphImageData.  | 
| DWRITE_GLYPH_METRICS  Specifies the metrics of an individual glyph.  | 
| DWRITE_GLYPH_OFFSET  The optional adjustment to a glyph's position.  | 
| DWRITE_GLYPH_RUN  Contains the information needed by renderers to draw glyph runs.  | 
| DWRITE_GLYPH_RUN_DESCRIPTION  Contains additional properties related to those in DWRITE_GLYPH_RUN.  | 
| DWRITE_HIT_TEST_METRICS  Describes the region obtained by a hit test.  | 
| DWRITE_INLINE_OBJECT_METRICS  Contains properties describing the geometric measurement of an application-defined inline object.  | 
| DWRITE_JUSTIFICATION_OPPORTUNITY  The DWRITE_JUSTIFICATION_OPPORTUNITY structure specifies justification info per glyph.  | 
| DWRITE_LINE_BREAKPOINT  Line breakpoint characteristics of a character.  | 
| DWRITE_LINE_METRICS  Contains information about a formatted line of text. (DWRITE_LINE_METRICS)  | 
| DWRITE_LINE_METRICS1  Contains information about a formatted line of text. (DWRITE_LINE_METRICS1)  | 
| DWRITE_LINE_SPACING  Sets the vertical spacing between lines of text.  | 
| DWRITE_MATRIX  The DWRITE_MATRIX structure specifies the graphics transform to be applied to rendered glyphs.  | 
| DWRITE_OVERHANG_METRICS  Indicates how much any visible DIPs (device independent pixels) overshoot each side of the layout or inline objects.  | 
| DWRITE_PANOSE  The DWRITE_PANOSE union describes typeface classification values that you use with IDWriteFont1::GetPanose to select and match the font.  | 
| DWRITE_SCRIPT_ANALYSIS  Stores the association of text and its writing system script, as well as some display attributes.  | 
| DWRITE_SCRIPT_PROPERTIES  The DWRITE_SCRIPT_PROPERTIES structure specifies script properties for caret navigation and justification.  | 
| DWRITE_SHAPING_GLYPH_PROPERTIES  Contains shaping output properties for an output glyph.  | 
| DWRITE_SHAPING_TEXT_PROPERTIES  Shaping output properties for an output glyph.  | 
| DWRITE_STRIKETHROUGH  Contains information regarding the size and placement of strikethroughs.  | 
| DWRITE_TEXT_METRICS  Contains the metrics associated with text after layout. (DWRITE_TEXT_METRICS)  | 
| DWRITE_TEXT_METRICS1  Contains the metrics associated with text after layout. (DWRITE_TEXT_METRICS1)  | 
| DWRITE_TEXT_RANGE  Specifies a range of text positions where format is applied in the text represented by an IDWriteTextLayout object.  | 
| DWRITE_TRIMMING  Specifies the trimming option for text overflowing the layout box.  | 
| DWRITE_TYPOGRAPHIC_FEATURES  Contains a set of typographic features to be applied during text shaping.  | 
| DWRITE_UNDERLINE  Contains information about the width, thickness, offset, run height, reading direction, and flow direction of an underline.  | 
| DWRITE_UNICODE_RANGE  The DWRITE_UNICODE_RANGE structure specifies the range of Unicode code points.  |