RetroArch
Classes | Macros | Typedefs | Enumerations | Functions | Variables
d2d1.h File Reference
#include <windows.h>
#include <unknwn.h>
#include <dcommon.h>
#include <d2derr.h>
#include <d2dbasetypes.h>
#include <dxgiformat.h>
#include <d3d10_1.h>
#include <d2d1helper.h>
Include dependency graph for d2d1.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  D2D1_BITMAP_PROPERTIES
 Describes the pixel format and dpi of a bitmap. More...
 
struct  D2D1_GRADIENT_STOP
 Contains the position and color of a gradient stop. More...
 
struct  D2D1_BRUSH_PROPERTIES
 Describes the opacity and transformation of a brush. More...
 
struct  D2D1_BITMAP_BRUSH_PROPERTIES
 Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush. More...
 
struct  D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES
 Contains the starting point and endpoint of the gradient axis for an ID2D1LinearGradientBrush. More...
 
struct  D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES
 Contains the gradient origin offset and the size and position of the gradient ellipse for an ID2D1RadialGradientBrush. More...
 
struct  D2D1_BEZIER_SEGMENT
 Describes a cubic bezier in a path. More...
 
struct  D2D1_TRIANGLE
 Describes a triangle. More...
 
struct  D2D1_ARC_SEGMENT
 Describes an arc that is defined as part of a path. More...
 
struct  D2D1_QUADRATIC_BEZIER_SEGMENT
 Contains the control point and end point for a quadratic Bezier segment. More...
 
struct  D2D1_ELLIPSE
 Contains the center point, x-radius, and y-radius of an ellipse. More...
 
struct  D2D1_ROUNDED_RECT
 Contains the dimensions and corner radii of a rounded rectangle. More...
 
struct  D2D1_STROKE_STYLE_PROPERTIES
 Properties, aside from the width, that allow geometric penning to be specified. More...
 
struct  D2D1_LAYER_PARAMETERS
 Contains the content bounds, mask information, opacity settings, and other options for a layer resource. More...
 
struct  D2D1_RENDER_TARGET_PROPERTIES
 Contains rendering options (hardware or software), pixel format, DPI information, remoting options, and Direct3D support requirements for a render target. More...
 
struct  D2D1_HWND_RENDER_TARGET_PROPERTIES
 Contains the HWND, pixel size, and presentation options for an ID2D1HwndRenderTarget. More...
 
struct  D2D1_DRAWING_STATE_DESCRIPTION
 Allows the drawing state to be atomically created. This also specifies the drawing state that is saved into an IDrawingStateBlock object. More...
 
struct  D2D1_FACTORY_OPTIONS
 Allows additional parameters for factory creation. More...
 

Macros

#define _D2D1_H_
 
#define D2D_USE_C_DEFINITIONS
 
#define D2D1_INVALID_TAG   ULONGLONG_MAX
 
#define D2D1_DEFAULT_FLATTENING_TOLERANCE   (0.25f)
 
#define D2D1FORCEINLINE   FORCEINLINE
 

Typedefs

typedef interface IDWriteTextFormat IDWriteTextFormat
 
typedef interface IDWriteTextLayout IDWriteTextLayout
 
typedef interface IDWriteRenderingParams IDWriteRenderingParams
 
typedef interface IDXGISurface IDXGISurface
 
typedef interface IWICBitmap IWICBitmap
 
typedef interface IWICBitmapSource IWICBitmapSource
 
typedef struct DWRITE_GLYPH_RUN DWRITE_GLYPH_RUN
 
typedef interface ID2D1Factory ID2D1Factory
 
typedef interface ID2D1RenderTarget ID2D1RenderTarget
 
typedef interface ID2D1BitmapRenderTarget ID2D1BitmapRenderTarget
 
typedef interface ID2D1SimplifiedGeometrySink ID2D1SimplifiedGeometrySink
 
typedef interface ID2D1TessellationSink ID2D1TessellationSink
 
typedef interface ID2D1Geometry ID2D1Geometry
 
typedef interface ID2D1Brush ID2D1Brush
 
typedef enum D2D1_GAMMA D2D1_GAMMA
 This determines what gamma is used for interpolation/blending. More...
 
typedef enum D2D1_OPACITY_MASK_CONTENT D2D1_OPACITY_MASK_CONTENT
 Specifies what the contents are of an opacity mask. More...
 
typedef enum D2D1_EXTEND_MODE D2D1_EXTEND_MODE
 Enum which describes how to sample from a source outside its base tile. More...
 
typedef enum D2D1_ANTIALIAS_MODE D2D1_ANTIALIAS_MODE
 Enum which describes the manner in which we render edges of non-text primitives. More...
 
typedef enum D2D1_TEXT_ANTIALIAS_MODE D2D1_TEXT_ANTIALIAS_MODE
 Describes the antialiasing mode used for drawing text. More...
 
typedef enum D2D1_BITMAP_INTERPOLATION_MODE D2D1_BITMAP_INTERPOLATION_MODE
 Specifies the algorithm that is used when images are scaled or rotated. Note Starting in Windows 8, more interpolations modes are available. See D2D1_INTERPOLATION_MODE for more info. More...
 
typedef enum D2D1_DRAW_TEXT_OPTIONS D2D1_DRAW_TEXT_OPTIONS
 Modifications made to the draw text call that influence how the text is rendered. More...
 
typedef D2D_POINT_2U D2D1_POINT_2U
 
typedef D2D_POINT_2F D2D1_POINT_2F
 
typedef D2D_RECT_F D2D1_RECT_F
 
typedef D2D_RECT_U D2D1_RECT_U
 
typedef D2D_SIZE_F D2D1_SIZE_F
 
typedef D2D_SIZE_U D2D1_SIZE_U
 
typedef D2D_COLOR_F D2D1_COLOR_F
 
typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F
 
typedef UINT64 D2D1_TAG
 
typedef struct D2D1_BITMAP_PROPERTIES D2D1_BITMAP_PROPERTIES
 Describes the pixel format and dpi of a bitmap. More...
 
typedef struct D2D1_GRADIENT_STOP D2D1_GRADIENT_STOP
 Contains the position and color of a gradient stop. More...
 
typedef struct D2D1_BRUSH_PROPERTIES D2D1_BRUSH_PROPERTIES
 Describes the opacity and transformation of a brush. More...
 
typedef struct D2D1_BITMAP_BRUSH_PROPERTIES D2D1_BITMAP_BRUSH_PROPERTIES
 Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush. More...
 
typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES
 Contains the starting point and endpoint of the gradient axis for an ID2D1LinearGradientBrush. More...
 
typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES
 Contains the gradient origin offset and the size and position of the gradient ellipse for an ID2D1RadialGradientBrush. More...
 
typedef enum D2D1_ARC_SIZE D2D1_ARC_SIZE
 Differentiates which of the two possible arcs could match the given arc parameters. More...
 
typedef enum D2D1_CAP_STYLE D2D1_CAP_STYLE
 Enum which describes the drawing of the ends of a line. More...
 
typedef enum D2D1_DASH_STYLE D2D1_DASH_STYLE
 Describes the sequence of dashes and gaps in a stroke. More...
 
typedef enum D2D1_LINE_JOIN D2D1_LINE_JOIN
 Enum which describes the drawing of the corners on the line. More...
 
typedef enum D2D1_COMBINE_MODE D2D1_COMBINE_MODE
 This enumeration describes the type of combine operation to be performed. More...
 
typedef enum D2D1_GEOMETRY_RELATION D2D1_GEOMETRY_RELATION
 Describes how one geometry object is spatially related to another geometry object. More...
 
typedef enum D2D1_GEOMETRY_SIMPLIFICATION_OPTION D2D1_GEOMETRY_SIMPLIFICATION_OPTION
 Specifies how simple the output of a simplified geometry sink should be. More...
 
typedef enum D2D1_FIGURE_BEGIN D2D1_FIGURE_BEGIN
 Indicates whether the given figure is filled or hollow. More...
 
typedef enum D2D1_FIGURE_END D2D1_FIGURE_END
 Indicates whether the figure is open or closed on its end point. More...
 
typedef struct D2D1_BEZIER_SEGMENT D2D1_BEZIER_SEGMENT
 Describes a cubic bezier in a path. More...
 
typedef struct D2D1_TRIANGLE D2D1_TRIANGLE
 Describes a triangle. More...
 
typedef enum D2D1_PATH_SEGMENT D2D1_PATH_SEGMENT
 Indicates whether the given segment should be stroked, or, if the join between this segment and the previous one should be smooth. More...
 
typedef enum D2D1_SWEEP_DIRECTION D2D1_SWEEP_DIRECTION
 Defines the direction that an elliptical arc is drawn. More...
 
typedef enum D2D1_FILL_MODE D2D1_FILL_MODE
 Specifies how the intersecting areas of geometries or figures are combined to form the area of the composite geometry. More...
 
typedef struct D2D1_ARC_SEGMENT D2D1_ARC_SEGMENT
 Describes an arc that is defined as part of a path. More...
 
typedef struct D2D1_QUADRATIC_BEZIER_SEGMENT D2D1_QUADRATIC_BEZIER_SEGMENT
 Contains the control point and end point for a quadratic Bezier segment. More...
 
typedef struct D2D1_ELLIPSE D2D1_ELLIPSE
 Contains the center point, x-radius, and y-radius of an ellipse. More...
 
typedef struct D2D1_ROUNDED_RECT D2D1_ROUNDED_RECT
 Contains the dimensions and corner radii of a rounded rectangle. More...
 
typedef struct D2D1_STROKE_STYLE_PROPERTIES D2D1_STROKE_STYLE_PROPERTIES
 Properties, aside from the width, that allow geometric penning to be specified. More...
 
typedef enum D2D1_LAYER_OPTIONS D2D1_LAYER_OPTIONS
 Specified options that can be applied when a layer resource is applied to create a layer. More...
 
typedef struct D2D1_LAYER_PARAMETERS D2D1_LAYER_PARAMETERS
 Contains the content bounds, mask information, opacity settings, and other options for a layer resource. More...
 
typedef enum D2D1_WINDOW_STATE D2D1_WINDOW_STATE
 Describes whether a window is occluded. More...
 
typedef enum D2D1_RENDER_TARGET_TYPE D2D1_RENDER_TARGET_TYPE
 Describes whether a render target uses hardware or software rendering, or if Direct2D should select the rendering mode. More...
 
typedef enum D2D1_FEATURE_LEVEL D2D1_FEATURE_LEVEL
 Describes the minimum DirectX support required for hardware rendering by a render target. More...
 
typedef enum D2D1_RENDER_TARGET_USAGE D2D1_RENDER_TARGET_USAGE
 Describes how a render target is remoted and whether it should be GDI-compatible. This enumeration allows a bitwise combination of its member values. More...
 
typedef enum D2D1_PRESENT_OPTIONS D2D1_PRESENT_OPTIONS
 Describes how present should behave. More...
 
typedef struct D2D1_RENDER_TARGET_PROPERTIES D2D1_RENDER_TARGET_PROPERTIES
 Contains rendering options (hardware or software), pixel format, DPI information, remoting options, and Direct3D support requirements for a render target. More...
 
typedef struct D2D1_HWND_RENDER_TARGET_PROPERTIES D2D1_HWND_RENDER_TARGET_PROPERTIES
 Contains the HWND, pixel size, and presentation options for an ID2D1HwndRenderTarget. More...
 
typedef enum D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS
 Specifies additional features supportable by a compatible render target when it is created. This enumeration allows a bitwise combination of its member values. More...
 
typedef struct D2D1_DRAWING_STATE_DESCRIPTION D2D1_DRAWING_STATE_DESCRIPTION
 Allows the drawing state to be atomically created. This also specifies the drawing state that is saved into an IDrawingStateBlock object. More...
 
typedef enum D2D1_DC_INITIALIZE_MODE D2D1_DC_INITIALIZE_MODE
 Specifies how a device context is initialized for GDI rendering when it is retrieved from the render target. More...
 
typedef enum D2D1_DEBUG_LEVEL D2D1_DEBUG_LEVEL
 Indicates the debug level to be output by the debug layer. More...
 
typedef enum D2D1_FACTORY_TYPE D2D1_FACTORY_TYPE
 Specifies the threading model of the created factory and all of its derived resources. More...
 
typedef struct D2D1_FACTORY_OPTIONS D2D1_FACTORY_OPTIONS
 Allows additional parameters for factory creation. More...
 
typedef interface ID2D1Resource ID2D1Resource
 
typedef interface ID2D1Image ID2D1Image
 
typedef interface ID2D1Bitmap ID2D1Bitmap
 
typedef interface ID2D1GradientStopCollection ID2D1GradientStopCollection
 
typedef interface ID2D1BitmapBrush ID2D1BitmapBrush
 
typedef interface ID2D1SolidColorBrush ID2D1SolidColorBrush
 
typedef interface ID2D1LinearGradientBrush ID2D1LinearGradientBrush
 
typedef interface ID2D1RadialGradientBrush ID2D1RadialGradientBrush
 
typedef interface ID2D1StrokeStyle ID2D1StrokeStyle
 
typedef interface ID2D1RectangleGeometry ID2D1RectangleGeometry
 
typedef interface ID2D1RoundedRectangleGeometry ID2D1RoundedRectangleGeometry
 
typedef interface ID2D1EllipseGeometry ID2D1EllipseGeometry
 
typedef interface ID2D1GeometryGroup ID2D1GeometryGroup
 
typedef interface ID2D1TransformedGeometry ID2D1TransformedGeometry
 
typedef interface ID2D1GeometrySink ID2D1GeometrySink
 
typedef interface ID2D1PathGeometry ID2D1PathGeometry
 
typedef interface ID2D1Mesh ID2D1Mesh
 
typedef interface ID2D1Layer ID2D1Layer
 
typedef interface ID2D1DrawingStateBlock ID2D1DrawingStateBlock
 
typedef interface ID2D1HwndRenderTarget ID2D1HwndRenderTarget
 
typedef interface ID2D1GdiInteropRenderTarget ID2D1GdiInteropRenderTarget
 
typedef interface ID2D1DCRenderTarget ID2D1DCRenderTarget
 

Enumerations

enum  {
  D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR = 0, D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR = 1, D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC = 2, D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR = 3,
  D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC = 4, D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC = 5, D2D1_INTERPOLATION_MODE_DEFINITION_FANT = 6, D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR = 7
}
 This defines the superset of interpolation mode supported by D2D APIs and built-in effects More...
 
enum  D2D1_GAMMA { D2D1_GAMMA_2_2 = 0, D2D1_GAMMA_1_0 = 1, D2D1_GAMMA_FORCE_DWORD = 0xffffffff }
 This determines what gamma is used for interpolation/blending. More...
 
enum  D2D1_OPACITY_MASK_CONTENT { D2D1_OPACITY_MASK_CONTENT_GRAPHICS = 0, D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL = 1, D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE = 2, D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD = 0xffffffff }
 Specifies what the contents are of an opacity mask. More...
 
enum  D2D1_EXTEND_MODE { D2D1_EXTEND_MODE_CLAMP = 0, D2D1_EXTEND_MODE_WRAP = 1, D2D1_EXTEND_MODE_MIRROR = 2, D2D1_EXTEND_MODE_FORCE_DWORD = 0xffffffff }
 Enum which describes how to sample from a source outside its base tile. More...
 
enum  D2D1_ANTIALIAS_MODE { D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0, D2D1_ANTIALIAS_MODE_ALIASED = 1, D2D1_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff }
 Enum which describes the manner in which we render edges of non-text primitives. More...
 
enum  D2D1_TEXT_ANTIALIAS_MODE {
  D2D1_TEXT_ANTIALIAS_MODE_DEFAULT = 0, D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE = 1, D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE = 2, D2D1_TEXT_ANTIALIAS_MODE_ALIASED = 3,
  D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff
}
 Describes the antialiasing mode used for drawing text. More...
 
enum  D2D1_BITMAP_INTERPOLATION_MODE { D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff }
 Specifies the algorithm that is used when images are scaled or rotated. Note Starting in Windows 8, more interpolations modes are available. See D2D1_INTERPOLATION_MODE for more info. More...
 
enum  D2D1_DRAW_TEXT_OPTIONS {
  D2D1_DRAW_TEXT_OPTIONS_NO_SNAP = 0x00000001, D2D1_DRAW_TEXT_OPTIONS_CLIP = 0x00000002, D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT = 0x00000004, D2D1_DRAW_TEXT_OPTIONS_DISABLE_COLOR_BITMAP_SNAPPING = 0x00000008,
  D2D1_DRAW_TEXT_OPTIONS_NONE = 0x00000000, D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = 0xffffffff
}
 Modifications made to the draw text call that influence how the text is rendered. More...
 
enum  D2D1_ARC_SIZE { D2D1_ARC_SIZE_SMALL = 0, D2D1_ARC_SIZE_LARGE = 1, D2D1_ARC_SIZE_FORCE_DWORD = 0xffffffff }
 Differentiates which of the two possible arcs could match the given arc parameters. More...
 
enum  D2D1_CAP_STYLE {
  D2D1_CAP_STYLE_FLAT = 0, D2D1_CAP_STYLE_SQUARE = 1, D2D1_CAP_STYLE_ROUND = 2, D2D1_CAP_STYLE_TRIANGLE = 3,
  D2D1_CAP_STYLE_FORCE_DWORD = 0xffffffff
}
 Enum which describes the drawing of the ends of a line. More...
 
enum  D2D1_DASH_STYLE {
  D2D1_DASH_STYLE_SOLID = 0, D2D1_DASH_STYLE_DASH = 1, D2D1_DASH_STYLE_DOT = 2, D2D1_DASH_STYLE_DASH_DOT = 3,
  D2D1_DASH_STYLE_DASH_DOT_DOT = 4, D2D1_DASH_STYLE_CUSTOM = 5, D2D1_DASH_STYLE_FORCE_DWORD = 0xffffffff
}
 Describes the sequence of dashes and gaps in a stroke. More...
 
enum  D2D1_LINE_JOIN {
  D2D1_LINE_JOIN_MITER = 0, D2D1_LINE_JOIN_BEVEL = 1, D2D1_LINE_JOIN_ROUND = 2, D2D1_LINE_JOIN_MITER_OR_BEVEL = 3,
  D2D1_LINE_JOIN_FORCE_DWORD = 0xffffffff
}
 Enum which describes the drawing of the corners on the line. More...
 
enum  D2D1_COMBINE_MODE {
  D2D1_COMBINE_MODE_UNION = 0, D2D1_COMBINE_MODE_INTERSECT = 1, D2D1_COMBINE_MODE_XOR = 2, D2D1_COMBINE_MODE_EXCLUDE = 3,
  D2D1_COMBINE_MODE_FORCE_DWORD = 0xffffffff
}
 This enumeration describes the type of combine operation to be performed. More...
 
enum  D2D1_GEOMETRY_RELATION {
  D2D1_GEOMETRY_RELATION_UNKNOWN = 0, D2D1_GEOMETRY_RELATION_DISJOINT = 1, D2D1_GEOMETRY_RELATION_IS_CONTAINED = 2, D2D1_GEOMETRY_RELATION_CONTAINS = 3,
  D2D1_GEOMETRY_RELATION_OVERLAP = 4, D2D1_GEOMETRY_RELATION_FORCE_DWORD = 0xffffffff
}
 Describes how one geometry object is spatially related to another geometry object. More...
 
enum  D2D1_GEOMETRY_SIMPLIFICATION_OPTION { D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES = 0, D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES = 1, D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD = 0xffffffff }
 Specifies how simple the output of a simplified geometry sink should be. More...
 
enum  D2D1_FIGURE_BEGIN { D2D1_FIGURE_BEGIN_FILLED = 0, D2D1_FIGURE_BEGIN_HOLLOW = 1, D2D1_FIGURE_BEGIN_FORCE_DWORD = 0xffffffff }
 Indicates whether the given figure is filled or hollow. More...
 
enum  D2D1_FIGURE_END { D2D1_FIGURE_END_OPEN = 0, D2D1_FIGURE_END_CLOSED = 1, D2D1_FIGURE_END_FORCE_DWORD = 0xffffffff }
 Indicates whether the figure is open or closed on its end point. More...
 
enum  D2D1_PATH_SEGMENT { D2D1_PATH_SEGMENT_NONE = 0x00000000, D2D1_PATH_SEGMENT_FORCE_UNSTROKED = 0x00000001, D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN = 0x00000002, D2D1_PATH_SEGMENT_FORCE_DWORD = 0xffffffff }
 Indicates whether the given segment should be stroked, or, if the join between this segment and the previous one should be smooth. More...
 
enum  D2D1_SWEEP_DIRECTION { D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0, D2D1_SWEEP_DIRECTION_CLOCKWISE = 1, D2D1_SWEEP_DIRECTION_FORCE_DWORD = 0xffffffff }
 Defines the direction that an elliptical arc is drawn. More...
 
enum  D2D1_FILL_MODE { D2D1_FILL_MODE_ALTERNATE = 0, D2D1_FILL_MODE_WINDING = 1, D2D1_FILL_MODE_FORCE_DWORD = 0xffffffff }
 Specifies how the intersecting areas of geometries or figures are combined to form the area of the composite geometry. More...
 
enum  D2D1_LAYER_OPTIONS { D2D1_LAYER_OPTIONS_NONE = 0x00000000, D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE = 0x00000001, D2D1_LAYER_OPTIONS_FORCE_DWORD = 0xffffffff }
 Specified options that can be applied when a layer resource is applied to create a layer. More...
 
enum  D2D1_WINDOW_STATE { D2D1_WINDOW_STATE_NONE = 0x0000000, D2D1_WINDOW_STATE_OCCLUDED = 0x0000001, D2D1_WINDOW_STATE_FORCE_DWORD = 0xffffffff }
 Describes whether a window is occluded. More...
 
enum  D2D1_RENDER_TARGET_TYPE { D2D1_RENDER_TARGET_TYPE_DEFAULT = 0, D2D1_RENDER_TARGET_TYPE_SOFTWARE = 1, D2D1_RENDER_TARGET_TYPE_HARDWARE = 2, D2D1_RENDER_TARGET_TYPE_FORCE_DWORD = 0xffffffff }
 Describes whether a render target uses hardware or software rendering, or if Direct2D should select the rendering mode. More...
 
enum  D2D1_FEATURE_LEVEL { D2D1_FEATURE_LEVEL_DEFAULT = 0, D2D1_FEATURE_LEVEL_9 = D3D_FEATURE_LEVEL_9_1, D2D1_FEATURE_LEVEL_10 = D3D_FEATURE_LEVEL_10_0, D2D1_FEATURE_LEVEL_FORCE_DWORD = 0xffffffff }
 Describes the minimum DirectX support required for hardware rendering by a render target. More...
 
enum  D2D1_RENDER_TARGET_USAGE { D2D1_RENDER_TARGET_USAGE_NONE = 0x00000000, D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING = 0x00000001, D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE = 0x00000002, D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = 0xffffffff }
 Describes how a render target is remoted and whether it should be GDI-compatible. This enumeration allows a bitwise combination of its member values. More...
 
enum  D2D1_PRESENT_OPTIONS { D2D1_PRESENT_OPTIONS_NONE = 0x00000000, D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 0x00000001, D2D1_PRESENT_OPTIONS_IMMEDIATELY = 0x00000002, D2D1_PRESENT_OPTIONS_FORCE_DWORD = 0xffffffff }
 Describes how present should behave. More...
 
enum  D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS { D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE = 0x00000000, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE = 0x00000001, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = 0xffffffff }
 Specifies additional features supportable by a compatible render target when it is created. This enumeration allows a bitwise combination of its member values. More...
 
enum  D2D1_DC_INITIALIZE_MODE { D2D1_DC_INITIALIZE_MODE_COPY = 0, D2D1_DC_INITIALIZE_MODE_CLEAR = 1, D2D1_DC_INITIALIZE_MODE_FORCE_DWORD = 0xffffffff }
 Specifies how a device context is initialized for GDI rendering when it is retrieved from the render target. More...
 
enum  D2D1_DEBUG_LEVEL {
  D2D1_DEBUG_LEVEL_NONE = 0, D2D1_DEBUG_LEVEL_ERROR = 1, D2D1_DEBUG_LEVEL_WARNING = 2, D2D1_DEBUG_LEVEL_INFORMATION = 3,
  D2D1_DEBUG_LEVEL_FORCE_DWORD = 0xffffffff
}
 Indicates the debug level to be output by the debug layer. More...
 
enum  D2D1_FACTORY_TYPE { D2D1_FACTORY_TYPE_SINGLE_THREADED = 0, D2D1_FACTORY_TYPE_MULTI_THREADED = 1, D2D1_FACTORY_TYPE_FORCE_DWORD = 0xffffffff }
 Specifies the threading model of the created factory and all of its derived resources. More...
 

Functions

 DEFINE_ENUM_FLAG_OPERATORS (D2D1_DRAW_TEXT_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_PATH_SEGMENT)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_LAYER_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_WINDOW_STATE)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_RENDER_TARGET_USAGE)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_PRESENT_OPTIONS)
 
 DEFINE_ENUM_FLAG_OPERATORS (D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS)
 
HRESULT WINAPI D2D1CreateFactory (_In_ D2D1_FACTORY_TYPE factoryType, _In_ REFIID riid, _In_opt_ CONST D2D1_FACTORY_OPTIONS *pFactoryOptions, _Out_ void **ppIFactory)
 
void WINAPI D2D1MakeRotateMatrix (_In_ FLOAT angle, _In_ D2D1_POINT_2F center, _Out_ D2D1_MATRIX_3X2_F *matrix)
 
void WINAPI D2D1MakeSkewMatrix (_In_ FLOAT angleX, _In_ FLOAT angleY, _In_ D2D1_POINT_2F center, _Out_ D2D1_MATRIX_3X2_F *matrix)
 
BOOL WINAPI D2D1IsMatrixInvertible (_In_ CONST D2D1_MATRIX_3X2_F *matrix)
 
BOOL WINAPI D2D1InvertMatrix (_Inout_ D2D1_MATRIX_3X2_F *matrix)
 

Variables

EXTERN_C CONST IID IID_ID2D1Resource
 
EXTERN_C CONST IID IID_ID2D1Image
 
EXTERN_C CONST IID IID_ID2D1Bitmap
 
EXTERN_C CONST IID IID_ID2D1GradientStopCollection
 
EXTERN_C CONST IID IID_ID2D1Brush
 
EXTERN_C CONST IID IID_ID2D1BitmapBrush
 
EXTERN_C CONST IID IID_ID2D1SolidColorBrush
 
EXTERN_C CONST IID IID_ID2D1LinearGradientBrush
 
EXTERN_C CONST IID IID_ID2D1RadialGradientBrush
 
EXTERN_C CONST IID IID_ID2D1StrokeStyle
 
EXTERN_C CONST IID IID_ID2D1Geometry
 
EXTERN_C CONST IID IID_ID2D1RectangleGeometry
 
EXTERN_C CONST IID IID_ID2D1RoundedRectangleGeometry
 
EXTERN_C CONST IID IID_ID2D1EllipseGeometry
 
EXTERN_C CONST IID IID_ID2D1GeometryGroup
 
EXTERN_C CONST IID IID_ID2D1TransformedGeometry
 
EXTERN_C CONST IID IID_ID2D1SimplifiedGeometrySink
 
EXTERN_C CONST IID IID_ID2D1GeometrySink
 
EXTERN_C CONST IID IID_ID2D1TessellationSink
 
EXTERN_C CONST IID IID_ID2D1PathGeometry
 
EXTERN_C CONST IID IID_ID2D1Mesh
 
EXTERN_C CONST IID IID_ID2D1Layer
 
EXTERN_C CONST IID IID_ID2D1DrawingStateBlock
 
EXTERN_C CONST IID IID_ID2D1RenderTarget
 
EXTERN_C CONST IID IID_ID2D1BitmapRenderTarget
 
EXTERN_C CONST IID IID_ID2D1HwndRenderTarget
 
EXTERN_C CONST IID IID_ID2D1DCRenderTarget
 
EXTERN_C CONST IID IID_ID2D1Factory
 
EXTERN_C CONST IID IID_ID2D1GdiInteropRenderTarget
 

Macro Definition Documentation

◆ _D2D1_H_

#define _D2D1_H_

◆ D2D1_DEFAULT_FLATTENING_TOLERANCE

#define D2D1_DEFAULT_FLATTENING_TOLERANCE   (0.25f)

◆ D2D1_INVALID_TAG

#define D2D1_INVALID_TAG   ULONGLONG_MAX

◆ D2D1FORCEINLINE

#define D2D1FORCEINLINE   FORCEINLINE

◆ D2D_USE_C_DEFINITIONS

#define D2D_USE_C_DEFINITIONS

Typedef Documentation

◆ D2D1_ANTIALIAS_MODE

Enum which describes the manner in which we render edges of non-text primitives.

◆ D2D1_ARC_SEGMENT

Describes an arc that is defined as part of a path.

◆ D2D1_ARC_SIZE

Differentiates which of the two possible arcs could match the given arc parameters.

◆ D2D1_BEZIER_SEGMENT

Describes a cubic bezier in a path.

◆ D2D1_BITMAP_BRUSH_PROPERTIES

Describes the extend modes and the interpolation mode of an ID2D1BitmapBrush.

◆ D2D1_BITMAP_INTERPOLATION_MODE

Specifies the algorithm that is used when images are scaled or rotated. Note Starting in Windows 8, more interpolations modes are available. See D2D1_INTERPOLATION_MODE for more info.

◆ D2D1_BITMAP_PROPERTIES

Describes the pixel format and dpi of a bitmap.

◆ D2D1_BRUSH_PROPERTIES

Describes the opacity and transformation of a brush.

◆ D2D1_CAP_STYLE

Enum which describes the drawing of the ends of a line.

◆ D2D1_COLOR_F

◆ D2D1_COMBINE_MODE

This enumeration describes the type of combine operation to be performed.

◆ D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS

Specifies additional features supportable by a compatible render target when it is created. This enumeration allows a bitwise combination of its member values.

◆ D2D1_DASH_STYLE

Describes the sequence of dashes and gaps in a stroke.

◆ D2D1_DC_INITIALIZE_MODE

Specifies how a device context is initialized for GDI rendering when it is retrieved from the render target.

◆ D2D1_DEBUG_LEVEL

Indicates the debug level to be output by the debug layer.

◆ D2D1_DRAW_TEXT_OPTIONS

Modifications made to the draw text call that influence how the text is rendered.

◆ D2D1_DRAWING_STATE_DESCRIPTION

Allows the drawing state to be atomically created. This also specifies the drawing state that is saved into an IDrawingStateBlock object.

◆ D2D1_ELLIPSE

typedef struct D2D1_ELLIPSE D2D1_ELLIPSE

Contains the center point, x-radius, and y-radius of an ellipse.

◆ D2D1_EXTEND_MODE

Enum which describes how to sample from a source outside its base tile.

◆ D2D1_FACTORY_OPTIONS

Allows additional parameters for factory creation.

◆ D2D1_FACTORY_TYPE

Specifies the threading model of the created factory and all of its derived resources.

◆ D2D1_FEATURE_LEVEL

Describes the minimum DirectX support required for hardware rendering by a render target.

◆ D2D1_FIGURE_BEGIN

Indicates whether the given figure is filled or hollow.

◆ D2D1_FIGURE_END

Indicates whether the figure is open or closed on its end point.

◆ D2D1_FILL_MODE

Specifies how the intersecting areas of geometries or figures are combined to form the area of the composite geometry.

◆ D2D1_GAMMA

typedef enum D2D1_GAMMA D2D1_GAMMA

This determines what gamma is used for interpolation/blending.

◆ D2D1_GEOMETRY_RELATION

Describes how one geometry object is spatially related to another geometry object.

◆ D2D1_GEOMETRY_SIMPLIFICATION_OPTION

Specifies how simple the output of a simplified geometry sink should be.

◆ D2D1_GRADIENT_STOP

Contains the position and color of a gradient stop.

◆ D2D1_HWND_RENDER_TARGET_PROPERTIES

Contains the HWND, pixel size, and presentation options for an ID2D1HwndRenderTarget.

◆ D2D1_LAYER_OPTIONS

Specified options that can be applied when a layer resource is applied to create a layer.

◆ D2D1_LAYER_PARAMETERS

Contains the content bounds, mask information, opacity settings, and other options for a layer resource.

◆ D2D1_LINE_JOIN

Enum which describes the drawing of the corners on the line.

◆ D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES

Contains the starting point and endpoint of the gradient axis for an ID2D1LinearGradientBrush.

◆ D2D1_MATRIX_3X2_F

◆ D2D1_OPACITY_MASK_CONTENT

Specifies what the contents are of an opacity mask.

◆ D2D1_PATH_SEGMENT

Indicates whether the given segment should be stroked, or, if the join between this segment and the previous one should be smooth.

◆ D2D1_POINT_2F

◆ D2D1_POINT_2U

◆ D2D1_PRESENT_OPTIONS

Describes how present should behave.

◆ D2D1_QUADRATIC_BEZIER_SEGMENT

Contains the control point and end point for a quadratic Bezier segment.

◆ D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES

Contains the gradient origin offset and the size and position of the gradient ellipse for an ID2D1RadialGradientBrush.

◆ D2D1_RECT_F

◆ D2D1_RECT_U

◆ D2D1_RENDER_TARGET_PROPERTIES

Contains rendering options (hardware or software), pixel format, DPI information, remoting options, and Direct3D support requirements for a render target.

◆ D2D1_RENDER_TARGET_TYPE

Describes whether a render target uses hardware or software rendering, or if Direct2D should select the rendering mode.

◆ D2D1_RENDER_TARGET_USAGE

Describes how a render target is remoted and whether it should be GDI-compatible. This enumeration allows a bitwise combination of its member values.

◆ D2D1_ROUNDED_RECT

Contains the dimensions and corner radii of a rounded rectangle.

◆ D2D1_SIZE_F

◆ D2D1_SIZE_U

◆ D2D1_STROKE_STYLE_PROPERTIES

Properties, aside from the width, that allow geometric penning to be specified.

◆ D2D1_SWEEP_DIRECTION

Defines the direction that an elliptical arc is drawn.

◆ D2D1_TAG

typedef UINT64 D2D1_TAG

◆ D2D1_TEXT_ANTIALIAS_MODE

Describes the antialiasing mode used for drawing text.

◆ D2D1_TRIANGLE

typedef struct D2D1_TRIANGLE D2D1_TRIANGLE

Describes a triangle.

◆ D2D1_WINDOW_STATE

Describes whether a window is occluded.

◆ DWRITE_GLYPH_RUN

◆ ID2D1Bitmap

typedef interface ID2D1Bitmap ID2D1Bitmap

◆ ID2D1BitmapBrush

◆ ID2D1BitmapRenderTarget

◆ ID2D1Brush

typedef interface ID2D1Brush ID2D1Brush

◆ ID2D1DCRenderTarget

◆ ID2D1DrawingStateBlock

◆ ID2D1EllipseGeometry

◆ ID2D1Factory

typedef interface ID2D1Factory ID2D1Factory

◆ ID2D1GdiInteropRenderTarget

◆ ID2D1Geometry

typedef interface ID2D1Geometry ID2D1Geometry

◆ ID2D1GeometryGroup

◆ ID2D1GeometrySink

◆ ID2D1GradientStopCollection

◆ ID2D1HwndRenderTarget

◆ ID2D1Image

typedef interface ID2D1Image ID2D1Image

◆ ID2D1Layer

typedef interface ID2D1Layer ID2D1Layer

◆ ID2D1LinearGradientBrush

◆ ID2D1Mesh

typedef interface ID2D1Mesh ID2D1Mesh

◆ ID2D1PathGeometry

◆ ID2D1RadialGradientBrush

◆ ID2D1RectangleGeometry

◆ ID2D1RenderTarget

◆ ID2D1Resource

typedef interface ID2D1Resource ID2D1Resource

◆ ID2D1RoundedRectangleGeometry

◆ ID2D1SimplifiedGeometrySink

◆ ID2D1SolidColorBrush

◆ ID2D1StrokeStyle

◆ ID2D1TessellationSink

◆ ID2D1TransformedGeometry

◆ IDWriteRenderingParams

◆ IDWriteTextFormat

◆ IDWriteTextLayout

◆ IDXGISurface

typedef interface IDXGISurface IDXGISurface

◆ IWICBitmap

typedef interface IWICBitmap IWICBitmap

◆ IWICBitmapSource

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

This defines the superset of interpolation mode supported by D2D APIs and built-in effects

Enumerator
D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR 
D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR 
D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC 
D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR 
D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC 
D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC 
D2D1_INTERPOLATION_MODE_DEFINITION_FANT 
D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR 

◆ D2D1_ANTIALIAS_MODE

Enum which describes the manner in which we render edges of non-text primitives.

Enumerator
D2D1_ANTIALIAS_MODE_PER_PRIMITIVE 

The edges of each primitive are antialiased sequentially.

D2D1_ANTIALIAS_MODE_ALIASED 

Each pixel is rendered if its pixel center is contained by the geometry.

D2D1_ANTIALIAS_MODE_FORCE_DWORD 

◆ D2D1_ARC_SIZE

Differentiates which of the two possible arcs could match the given arc parameters.

Enumerator
D2D1_ARC_SIZE_SMALL 
D2D1_ARC_SIZE_LARGE 
D2D1_ARC_SIZE_FORCE_DWORD 

◆ D2D1_BITMAP_INTERPOLATION_MODE

Specifies the algorithm that is used when images are scaled or rotated. Note Starting in Windows 8, more interpolations modes are available. See D2D1_INTERPOLATION_MODE for more info.

Enumerator
D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR 

Nearest Neighbor filtering. Also known as nearest pixel or nearest point sampling.

D2D1_BITMAP_INTERPOLATION_MODE_LINEAR 

Linear filtering.

D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD 

◆ D2D1_CAP_STYLE

Enum which describes the drawing of the ends of a line.

Enumerator
D2D1_CAP_STYLE_FLAT 

Flat line cap.

D2D1_CAP_STYLE_SQUARE 

Square line cap.

D2D1_CAP_STYLE_ROUND 

Round line cap.

D2D1_CAP_STYLE_TRIANGLE 

Triangle line cap.

D2D1_CAP_STYLE_FORCE_DWORD 

◆ D2D1_COMBINE_MODE

This enumeration describes the type of combine operation to be performed.

Enumerator
D2D1_COMBINE_MODE_UNION 

Produce a geometry representing the set of points contained in either the first or the second geometry.

D2D1_COMBINE_MODE_INTERSECT 

Produce a geometry representing the set of points common to the first and the second geometries.

D2D1_COMBINE_MODE_XOR 

Produce a geometry representing the set of points contained in the first geometry or the second geometry, but not both.

D2D1_COMBINE_MODE_EXCLUDE 

Produce a geometry representing the set of points contained in the first geometry but not the second geometry.

D2D1_COMBINE_MODE_FORCE_DWORD 

◆ D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS

Specifies additional features supportable by a compatible render target when it is created. This enumeration allows a bitwise combination of its member values.

Enumerator
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE 
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE 

The compatible render target will allow a call to GetDC on the ID2D1GdiInteropRenderTarget interface. This can be specified even if the parent render target is not GDI compatible.

D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD 

◆ D2D1_DASH_STYLE

Describes the sequence of dashes and gaps in a stroke.

Enumerator
D2D1_DASH_STYLE_SOLID 
D2D1_DASH_STYLE_DASH 
D2D1_DASH_STYLE_DOT 
D2D1_DASH_STYLE_DASH_DOT 
D2D1_DASH_STYLE_DASH_DOT_DOT 
D2D1_DASH_STYLE_CUSTOM 
D2D1_DASH_STYLE_FORCE_DWORD 

◆ D2D1_DC_INITIALIZE_MODE

Specifies how a device context is initialized for GDI rendering when it is retrieved from the render target.

Enumerator
D2D1_DC_INITIALIZE_MODE_COPY 

The contents of the D2D render target will be copied to the DC.

D2D1_DC_INITIALIZE_MODE_CLEAR 

The contents of the DC will be cleared.

D2D1_DC_INITIALIZE_MODE_FORCE_DWORD 

◆ D2D1_DEBUG_LEVEL

Indicates the debug level to be output by the debug layer.

Enumerator
D2D1_DEBUG_LEVEL_NONE 
D2D1_DEBUG_LEVEL_ERROR 
D2D1_DEBUG_LEVEL_WARNING 
D2D1_DEBUG_LEVEL_INFORMATION 
D2D1_DEBUG_LEVEL_FORCE_DWORD 

◆ D2D1_DRAW_TEXT_OPTIONS

Modifications made to the draw text call that influence how the text is rendered.

Enumerator
D2D1_DRAW_TEXT_OPTIONS_NO_SNAP 

Do not snap the baseline of the text vertically.

D2D1_DRAW_TEXT_OPTIONS_CLIP 

Clip the text to the content bounds.

D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT 

Render color versions of glyphs if defined by the font.

D2D1_DRAW_TEXT_OPTIONS_DISABLE_COLOR_BITMAP_SNAPPING 

Bitmap origins of color glyph bitmaps are not snapped.

D2D1_DRAW_TEXT_OPTIONS_NONE 
D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD 

◆ D2D1_EXTEND_MODE

Enum which describes how to sample from a source outside its base tile.

Enumerator
D2D1_EXTEND_MODE_CLAMP 

Extend the edges of the source out by clamping sample points outside the source to the edges.

D2D1_EXTEND_MODE_WRAP 

The base tile is drawn untransformed and the remainder are filled by repeating the base tile.

D2D1_EXTEND_MODE_MIRROR 

The same as wrap, but alternate tiles are flipped The base tile is drawn untransformed.

D2D1_EXTEND_MODE_FORCE_DWORD 

◆ D2D1_FACTORY_TYPE

Specifies the threading model of the created factory and all of its derived resources.

Enumerator
D2D1_FACTORY_TYPE_SINGLE_THREADED 

The resulting factory and derived resources may only be invoked serially. Reference counts on resources are interlocked, however, resource and render target state is not protected from multi-threaded access.

D2D1_FACTORY_TYPE_MULTI_THREADED 

The resulting factory may be invoked from multiple threads. Returned resources use interlocked reference counting and their state is protected.

D2D1_FACTORY_TYPE_FORCE_DWORD 

◆ D2D1_FEATURE_LEVEL

Describes the minimum DirectX support required for hardware rendering by a render target.

Enumerator
D2D1_FEATURE_LEVEL_DEFAULT 

The caller does not require a particular underlying D3D device level.

D2D1_FEATURE_LEVEL_9 

The D3D device level is DX9 compatible.

D2D1_FEATURE_LEVEL_10 

The D3D device level is DX10 compatible.

D2D1_FEATURE_LEVEL_FORCE_DWORD 

◆ D2D1_FIGURE_BEGIN

Indicates whether the given figure is filled or hollow.

Enumerator
D2D1_FIGURE_BEGIN_FILLED 
D2D1_FIGURE_BEGIN_HOLLOW 
D2D1_FIGURE_BEGIN_FORCE_DWORD 

◆ D2D1_FIGURE_END

Indicates whether the figure is open or closed on its end point.

Enumerator
D2D1_FIGURE_END_OPEN 
D2D1_FIGURE_END_CLOSED 
D2D1_FIGURE_END_FORCE_DWORD 

◆ D2D1_FILL_MODE

Specifies how the intersecting areas of geometries or figures are combined to form the area of the composite geometry.

Enumerator
D2D1_FILL_MODE_ALTERNATE 
D2D1_FILL_MODE_WINDING 
D2D1_FILL_MODE_FORCE_DWORD 

◆ D2D1_GAMMA

enum D2D1_GAMMA

This determines what gamma is used for interpolation/blending.

Enumerator
D2D1_GAMMA_2_2 

Colors are manipulated in 2.2 gamma color space.

D2D1_GAMMA_1_0 

Colors are manipulated in 1.0 gamma color space.

D2D1_GAMMA_FORCE_DWORD 

◆ D2D1_GEOMETRY_RELATION

Describes how one geometry object is spatially related to another geometry object.

Enumerator
D2D1_GEOMETRY_RELATION_UNKNOWN 

The relation between the geometries couldn't be determined. This value is never returned by any D2D method.

D2D1_GEOMETRY_RELATION_DISJOINT 

The two geometries do not intersect at all.

D2D1_GEOMETRY_RELATION_IS_CONTAINED 

The passed in geometry is entirely contained by the object.

D2D1_GEOMETRY_RELATION_CONTAINS 

The object entirely contains the passed in geometry.

D2D1_GEOMETRY_RELATION_OVERLAP 

The two geometries overlap but neither completely contains the other.

D2D1_GEOMETRY_RELATION_FORCE_DWORD 

◆ D2D1_GEOMETRY_SIMPLIFICATION_OPTION

Specifies how simple the output of a simplified geometry sink should be.

Enumerator
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES 
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES 
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD 

◆ D2D1_LAYER_OPTIONS

Specified options that can be applied when a layer resource is applied to create a layer.

Enumerator
D2D1_LAYER_OPTIONS_NONE 
D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE 

The layer will render correctly for ClearType text. If the render target was set to ClearType previously, the layer will continue to render ClearType. If the render target was set to ClearType and this option is not specified, the render target will be set to render gray-scale until the layer is popped. The caller can override this default by calling SetTextAntialiasMode while within the layer. This flag is slightly slower than the default.

D2D1_LAYER_OPTIONS_FORCE_DWORD 

◆ D2D1_LINE_JOIN

Enum which describes the drawing of the corners on the line.

Enumerator
D2D1_LINE_JOIN_MITER 

Miter join.

D2D1_LINE_JOIN_BEVEL 

Bevel join.

D2D1_LINE_JOIN_ROUND 

Round join.

D2D1_LINE_JOIN_MITER_OR_BEVEL 

Miter/Bevel join.

D2D1_LINE_JOIN_FORCE_DWORD 

◆ D2D1_OPACITY_MASK_CONTENT

Specifies what the contents are of an opacity mask.

Enumerator
D2D1_OPACITY_MASK_CONTENT_GRAPHICS 

The mask contains geometries or bitmaps.

D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL 

The mask contains text rendered using one of the natural text modes.

D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE 

The mask contains text rendered using one of the GDI compatible text modes.

D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD 

◆ D2D1_PATH_SEGMENT

Indicates whether the given segment should be stroked, or, if the join between this segment and the previous one should be smooth.

Enumerator
D2D1_PATH_SEGMENT_NONE 
D2D1_PATH_SEGMENT_FORCE_UNSTROKED 
D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN 
D2D1_PATH_SEGMENT_FORCE_DWORD 

◆ D2D1_PRESENT_OPTIONS

Describes how present should behave.

Enumerator
D2D1_PRESENT_OPTIONS_NONE 
D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS 

Keep the target contents intact through present.

D2D1_PRESENT_OPTIONS_IMMEDIATELY 

Do not wait for display refresh to commit changes to display.

D2D1_PRESENT_OPTIONS_FORCE_DWORD 

◆ D2D1_RENDER_TARGET_TYPE

Describes whether a render target uses hardware or software rendering, or if Direct2D should select the rendering mode.

Enumerator
D2D1_RENDER_TARGET_TYPE_DEFAULT 

D2D is free to choose the render target type for the caller.

D2D1_RENDER_TARGET_TYPE_SOFTWARE 

The render target will render using the CPU.

D2D1_RENDER_TARGET_TYPE_HARDWARE 

The render target will render using the GPU.

D2D1_RENDER_TARGET_TYPE_FORCE_DWORD 

◆ D2D1_RENDER_TARGET_USAGE

Describes how a render target is remoted and whether it should be GDI-compatible. This enumeration allows a bitwise combination of its member values.

Enumerator
D2D1_RENDER_TARGET_USAGE_NONE 
D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING 

Rendering will occur locally, if a terminal-services session is established, the bitmap updates will be sent to the terminal services client.

D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE 

The render target will allow a call to GetDC on the ID2D1GdiInteropRenderTarget interface. Rendering will also occur locally.

D2D1_RENDER_TARGET_USAGE_FORCE_DWORD 

◆ D2D1_SWEEP_DIRECTION

Defines the direction that an elliptical arc is drawn.

Enumerator
D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE 
D2D1_SWEEP_DIRECTION_CLOCKWISE 
D2D1_SWEEP_DIRECTION_FORCE_DWORD 

◆ D2D1_TEXT_ANTIALIAS_MODE

Describes the antialiasing mode used for drawing text.

Enumerator
D2D1_TEXT_ANTIALIAS_MODE_DEFAULT 

Render text using the current system setting.

D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE 

Render text using ClearType.

D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE 

Render text using gray-scale.

D2D1_TEXT_ANTIALIAS_MODE_ALIASED 

Render text aliased.

D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD 

◆ D2D1_WINDOW_STATE

Describes whether a window is occluded.

Enumerator
D2D1_WINDOW_STATE_NONE 
D2D1_WINDOW_STATE_OCCLUDED 
D2D1_WINDOW_STATE_FORCE_DWORD 

Function Documentation

◆ D2D1CreateFactory()

HRESULT WINAPI D2D1CreateFactory ( _In_ D2D1_FACTORY_TYPE  factoryType,
_In_ REFIID  riid,
_In_opt_ CONST D2D1_FACTORY_OPTIONS pFactoryOptions,
_Out_ void **  ppIFactory 
)

◆ D2D1InvertMatrix()

BOOL WINAPI D2D1InvertMatrix ( _Inout_ D2D1_MATRIX_3X2_F matrix)

◆ D2D1IsMatrixInvertible()

BOOL WINAPI D2D1IsMatrixInvertible ( _In_ CONST D2D1_MATRIX_3X2_F matrix)

◆ D2D1MakeRotateMatrix()

void WINAPI D2D1MakeRotateMatrix ( _In_ FLOAT  angle,
_In_ D2D1_POINT_2F  center,
_Out_ D2D1_MATRIX_3X2_F matrix 
)

◆ D2D1MakeSkewMatrix()

void WINAPI D2D1MakeSkewMatrix ( _In_ FLOAT  angleX,
_In_ FLOAT  angleY,
_In_ D2D1_POINT_2F  center,
_Out_ D2D1_MATRIX_3X2_F matrix 
)

◆ DEFINE_ENUM_FLAG_OPERATORS() [1/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_DRAW_TEXT_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [2/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_PATH_SEGMENT  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [3/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_LAYER_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [4/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_WINDOW_STATE  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [5/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_RENDER_TARGET_USAGE  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [6/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_PRESENT_OPTIONS  )

◆ DEFINE_ENUM_FLAG_OPERATORS() [7/7]

DEFINE_ENUM_FLAG_OPERATORS ( D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS  )

Variable Documentation

◆ IID_ID2D1Bitmap

EXTERN_C CONST IID IID_ID2D1Bitmap

◆ IID_ID2D1BitmapBrush

EXTERN_C CONST IID IID_ID2D1BitmapBrush

◆ IID_ID2D1BitmapRenderTarget

EXTERN_C CONST IID IID_ID2D1BitmapRenderTarget

◆ IID_ID2D1Brush

EXTERN_C CONST IID IID_ID2D1Brush

◆ IID_ID2D1DCRenderTarget

EXTERN_C CONST IID IID_ID2D1DCRenderTarget

◆ IID_ID2D1DrawingStateBlock

EXTERN_C CONST IID IID_ID2D1DrawingStateBlock

◆ IID_ID2D1EllipseGeometry

EXTERN_C CONST IID IID_ID2D1EllipseGeometry

◆ IID_ID2D1Factory

EXTERN_C CONST IID IID_ID2D1Factory

◆ IID_ID2D1GdiInteropRenderTarget

EXTERN_C CONST IID IID_ID2D1GdiInteropRenderTarget

◆ IID_ID2D1Geometry

EXTERN_C CONST IID IID_ID2D1Geometry

◆ IID_ID2D1GeometryGroup

EXTERN_C CONST IID IID_ID2D1GeometryGroup

◆ IID_ID2D1GeometrySink

EXTERN_C CONST IID IID_ID2D1GeometrySink

◆ IID_ID2D1GradientStopCollection

EXTERN_C CONST IID IID_ID2D1GradientStopCollection

◆ IID_ID2D1HwndRenderTarget

EXTERN_C CONST IID IID_ID2D1HwndRenderTarget

◆ IID_ID2D1Image

EXTERN_C CONST IID IID_ID2D1Image

◆ IID_ID2D1Layer

EXTERN_C CONST IID IID_ID2D1Layer

◆ IID_ID2D1LinearGradientBrush

EXTERN_C CONST IID IID_ID2D1LinearGradientBrush

◆ IID_ID2D1Mesh

EXTERN_C CONST IID IID_ID2D1Mesh

◆ IID_ID2D1PathGeometry

EXTERN_C CONST IID IID_ID2D1PathGeometry

◆ IID_ID2D1RadialGradientBrush

EXTERN_C CONST IID IID_ID2D1RadialGradientBrush

◆ IID_ID2D1RectangleGeometry

EXTERN_C CONST IID IID_ID2D1RectangleGeometry

◆ IID_ID2D1RenderTarget

EXTERN_C CONST IID IID_ID2D1RenderTarget

◆ IID_ID2D1Resource

EXTERN_C CONST IID IID_ID2D1Resource

◆ IID_ID2D1RoundedRectangleGeometry

EXTERN_C CONST IID IID_ID2D1RoundedRectangleGeometry

◆ IID_ID2D1SimplifiedGeometrySink

EXTERN_C CONST IID IID_ID2D1SimplifiedGeometrySink

◆ IID_ID2D1SolidColorBrush

EXTERN_C CONST IID IID_ID2D1SolidColorBrush

◆ IID_ID2D1StrokeStyle

EXTERN_C CONST IID IID_ID2D1StrokeStyle

◆ IID_ID2D1TessellationSink

EXTERN_C CONST IID IID_ID2D1TessellationSink

◆ IID_ID2D1TransformedGeometry

EXTERN_C CONST IID IID_ID2D1TransformedGeometry