Win32 API:D2D1_GAMMA 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_GAMMA 枚举用于指定颜色渐变的伽马校正模式。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_GAMMA 枚举的定义:typedef enum D2D1_GAMMA { D2D1_GAMMA_2_2 = 0, D2D1_GAMMA_1_0 = 1, D2D1_GAMMA_FORCE_DWORD = 0xffffffff,} D2D1_GAMMA;该枚举包含两个成员:1. D2D1_GAMMA_2_2:表示使用伽马值为2.2的颜色校正。2. D2D1_GAMMA_1_0:表示不使用颜色校正。这些选项用于在创建渐变画刷等 Direct2D 对象时,指定颜色的渐变模式,以满足不同的颜色表示需求。
Win32 API:D2D1_FILL_MODE 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_FILL_MODE 枚举用于指定填充图形时的填充模式。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_FILL_MODE 枚举的定义:typedef enum D2D1_FILL_MODE { D2D1_FILL_MODE_ALTERNATE = 0, D2D1_FILL_MODE_WINDING = 1,} D2D1_FILL_MODE;该枚举包含两个成员:1. D2D1_FILL_MODE_ALTERNATE:交替填充模式。在这个模式下,每个图形的填充区域都会被填充一次。2. D2D1_FILL_MODE_WINDING:环绕填充模式。在这个模式下,根据图形的方向,填充区域可能会被填充多次,形成环绕效果。这些填充模式用于指定在绘制图形时,图形的填充行为。你可以在创建路径等 Direct2D 对象时,通过设置相应的属性来指定所需的填充模式。
Win32 API:D2D1_FIGURE_END 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_FIGURE_END 枚举用于指定 Direct2D 中路径的起始和结束标志。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_FIGURE_END 枚举的定义:typedef enum D2D1_FIGURE_END { D2D1_FIGURE_END_OPEN = 0, D2D1_FIGURE_END_CLOSED = 1,} D2D1_FIGURE_END;该枚举包含两个成员:1. D2D1_FIGURE_END_OPEN:表示路径的结束是开放的,即路径没有封闭。2. D2D1_FIGURE_END_CLOSED:表示路径的结束是闭合的,即路径是封闭的形状。在使用 Direct2D 绘制路径时,你可以使用这个枚举指定路径的起始和结束状态,以定义路径的形状。
Win32 API:D2D1_FEATURE_LEVEL 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_FEATURE_LEVEL 枚举用于指定 Direct2D 所支持的硬件特性级别。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_FEATURE_LEVEL 枚举的定义:typedef 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_10_1 = D3D_FEATURE_LEVEL_10_1, D2D1_FEATURE_LEVEL_11 = D3D_FEATURE_LEVEL_11_0, D2D1_FEATURE_LEVEL_12 = D3D_FEATURE_LEVEL_12_0, D2D1_FEATURE_LEVEL_12_1 = D3D_FEATURE_LE...
Win32 API:D2D1_FACTORY_TYPE 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_FACTORY_TYPE 枚举用于指定 Direct2D 工厂的类型。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_FACTORY_TYPE 枚举的定义:typedef enum D2D1_FACTORY_TYPE { D2D1_FACTORY_TYPE_SINGLE_THREADED = 0, D2D1_FACTORY_TYPE_MULTI_THREADED = 1, D2D1_FACTORY_TYPE_FORCE_DWORD = 0xffffffff,} D2D1_FACTORY_TYPE;该枚举包含两个成员:1. D2D1_FACTORY_TYPE_SINGLE_THREADED:表示创建单线程 Direct2D 工厂。在这种模式下,Direct2D 的对象只能在创建它们的线程上使用。2. D2D1_FACTORY_TYPE_MULTI_THREADED:表示创建多线程 Direct2D 工厂。在这种模式下,Direct2D 的对象可以在创建它们的线程以及其他线程上使用,但需要注意线程同...
Win32 API:D2D1_EXTEND_MODE 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_EXTEND_MODE 枚举用于指定渐变(如线性渐变或径向渐变)的边缘模式。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_EXTEND_MODE 枚举的定义:typedef 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,} D2D1_EXTEND_MODE;该枚举包含三个成员,分别表示不同的渐变边缘模式:1. D2D1_EXTEND_MODE_CLAMP:在边缘处拉伸颜色,超出渐变范围的部分使用边界颜色。2. D2D1_EXTEND_MODE_WRAP:在渐变范围之外的部分,通过循环重复图案。3. D2D1_EXTEND_MODE_MIRROR:在渐变范围之外的部分,通过镜像重复图案。这些渐变的边缘模式用于定义当渐...
Win32 API:D2D1_DEBUG_LEVEL 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_DEBUG_LEVEL 枚举用于指定 Direct2D 调试的详细程度。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_DEBUG_LEVEL 枚举的定义:typedef 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;该枚举包含四个成员,分别表示不同的调试详细程度:1. D2D1_DEBUG_LEVEL_NONE:无调试信息。2. D2D1_DEBUG_LEVEL_ERROR:仅显示错误调试信息。3. D2D1_DEBUG_LEVEL_WARNING:显示错误和警告调试信息。4. D2D1_DEBUG_LEVEL_INFORMATION:显示所有调试信息,包括错误、警告和其他信息。通过设置调试级别,你可以控制 D...
Win32 API:D2D1_DASH_STYLE 枚举(D2d1.h)
在 Win32 API 的 Direct2D 中,D2D1_DASH_STYLE 枚举用于指定笔刷的虚线样式。该枚举定义在 D2d1.h 头文件中。以下是 D2D1_DASH_STYLE 枚举的定义:typedef 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;该枚举包含六个成员,分别表示不同的虚线样式:1. D2D1_DASH_STYLE_SOLID:实线。2. D2D1_DASH_STYLE_DASH:短划线。3. D2D1_DASH_STYLE_DOT:点线。4. D2D1_DASH_STYLE_DASH_DOT:短划线和点线交替。5...
Win32 API:D2D1_CAP_STYLE 枚举(D2d1.h)
D2D1_CAP_STYLE 枚举是 Win32 API 中 Direct2D 图形库中定义的一个枚举类型,用于指定线段两端的端点样式。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_CAP_STYLE 枚举的定义:typedef 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;该枚举包含四个成员:1. D2D1_CAP_STYLE_FLAT:平头端点,即线段的端点是一个平直的矩形。2. D2D1_CAP_STYLE_SQUARE:方头端点,即线段的端点是一个正方形。3. D2D1_CAP_STYLE_ROUND:圆头端点,即线段的端点是一个半圆。4. D2D1_CAP_STYLE_TRIANGLE:三角头端点,即线段的端点是一个三角形。这些端点样式用于定义直线的开始和结束的外观。在 Direct2D 中,你可以...
Win32 API:D2D1_BITMAP_INTERPOLATION_MODE 枚举(D2d1.h)
D2D1_BITMAP_INTERPOLATION_MODE 枚举是 Win32 API 中 Direct2D 图形库中定义的一个枚举类型,用于指定位图插值的模式。这个枚举定义在 D2d1.h 头文件中。以下是 D2D1_BITMAP_INTERPOLATION_MODE 枚举的定义:typedef enum D2D1_BITMAP_INTERPOLATION_MODE { D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0, D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = 1,} D2D1_BITMAP_INTERPOLATION_MODE;该枚举包含两个成员:1. D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR:最近邻插值模式。在这种模式下,用目标像素的最近邻原始像素的值进行插值,可能导致图像边缘的锯齿状效果。2. D2D1_BITMAP_INTERPOLATION_MODE_LINEAR:线性插值模式。这种模式下,用目标像素的...
Win32 API:D2D1_ANTIALIAS_MODE 枚举(D2d1.h)
D2D1_ANTIALIAS_MODE 枚举是 Win32 API 中 Direct2D 图形库中定义的一个枚举,用于指定图形的抗锯齿模式。抗锯齿是一种图形渲染技术,用于减少图形边缘的锯齿状效果,使得图形在屏幕上呈现更加平滑和细腻。下面是 D2D1_ANTIALIAS_MODE 枚举的定义:typedef enum D2D1_ANTIALIAS_MODE { D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0, D2D1_ANTIALIAS_MODE_ALIASED = 1,} D2D1_ANTIALIAS_MODE;这个枚举包含两个成员:D2D1_ANTIALIAS_MODE_PER_PRIMITIVE 和 D2D1_ANTIALIAS_MODE_ALIASED。它们分别表示两种抗锯齿模式。 D2D1_ANTIALIAS_MODE_PER_PRIMITIVE:表示每个图元(如线段、矩形等)都使用抗锯齿,这是一种更为平滑的模式,适用于需要高质量绘制的情况。 D2D1_ANTIALIAS_MODE_ALIASED:表示整个图形使用锯齿模式,这是一...
Win32 API:D2D1_TRIANGLE 结构(D2d1.h)
D2D1_TRIANGLE 结构是 Win32 API 中 Direct2D 图形库中定义的一个结构体,用于表示一个三角形的顶点信息。这个结构体的定义通常在 D2d1.h 头文件中。下面是 D2D1_TRIANGLE 结构体的定义:typedef struct D2D1_TRIANGLE { D2D1_POINT_2F point1; D2D1_POINT_2F point2; D2D1_POINT_2F point3;} D2D1_TRIANGLE;该结构体包含三个成员变量,分别是 point1、point2 和 point3,它们的类型是 D2D1_POINT_2F。这表示三角形的三个顶点坐标。D2D1_POINT_2F 结构体定义如下:typedef struct D2D1_POINT_2F { FLOAT x; FLOAT y;} D2D1_POINT_2F;其中,x 和 y 分别表示点的横坐标和纵坐标。通过使用 D2D1_TRIANGLE 结构体,你可以在 Direct2D 中表示和绘制一个三角形。这通常用于创建和渲染图形对象。
Win32 API:D2D1_STROKE_STYLE_PROPERTIES 结构(D2d1.h)
D2D1_STROKE_STYLE_PROPERTIES 是用于描述 Direct2D 中描边样式的结构体,定义在 D2d1.h 头文件中。以下是该结构体的定义:typedef struct D2D1_STROKE_STYLE_PROPERTIES { D2D1_CAP_STYLE startCap; D2D1_CAP_STYLE endCap; D2D1_CAP_STYLE dashCap; D2D1_LINE_JOIN lineJoin; FLOAT miterLimit; D2D1_DASH_STYLE dashStyle; FLOAT dashOffset;} D2D1_STROKE_STYLE_PROPERTIES;这个结构体的成员含义如下: startCap:指定线段的起始端点的线帽样式。 endCap:指定线段的结束端点的线帽样式。 dashCap:指定虚线的线帽样式。 lineJoin:指定相交线段的连接方式,如圆角、斜角等。 miterLimit:指定斜角连接的限制比例,当斜角连接的长度超过这个比例乘以线宽时,将转...
Win32 API:D2D1_ROUNDED_RECT 结构(D2d1.h)
D2D1_ROUNDED_RECT 是 Direct2D 库中定义的一个结构,用于描述带有圆角的矩形。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_ROUNDED_RECT { D2D1_RECT_F rect; FLOAT radiusX; FLOAT radiusY;} D2D1_ROUNDED_RECT;这个结构有以下成员: rect: 矩形的坐标和大小,使用 D2D1_RECT_F 结构表示。 radiusX: 矩形的水平方向圆角半径。 radiusY: 矩形的垂直方向圆角半径。使用这个结构可以方便地描述一个带有圆角的矩形,然后通过 Direct2D 的绘图接口进行矩形的绘制。以下是一个使用 D2D1_ROUNDED_RECT 结构创建带有圆角的矩形的简单示例:#include <d2d1.h>// 假设 pRenderTarget 是一个有效的 ID2D1RenderTarget 指针ID2D1RenderTarget *pRenderTarget;// 创建一个 D2D1_ROUN...
Win32 API:D2D1_RENDER_TARGET_PROPERTIES 结构(D2d1.h)
D2D1_RENDER_TARGET_PROPERTIES 是 Direct2D 库中定义的一个结构,用于描述渲染目标(render target)的属性。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_RENDER_TARGET_PROPERTIES { D2D1_RENDER_TARGET_TYPE type; D2D1_PIXEL_FORMAT pixelFormat; FLOAT dpiX; FLOAT dpiY; D2D1_RENDER_TARGET_USAGE usage; D2D1_FEATURE_LEVEL minLevel;} D2D1_RENDER_TARGET_PROPERTIES;这个结构有以下成员: type: 渲染目标的类型,可以是 D2D1_RENDER_TARGET_TYPE_DEFAULT、D2D1_RENDER_TARGET_TYPE_SOFTWARE、D2D1_RENDER_TARGET_TYP...
Win32 API:D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES 结构(D2d1.h)
D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES 是 Direct2D 库中定义的一个结构,用于描述径向渐变刷子的属性。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES { D2D1_POINT_2F center; D2D1_POINT_2F gradientOriginOffset; FLOAT radiusX; FLOAT radiusY;} D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;这个结构有以下成员: center: 渐变的中心点坐标。 gradientOriginOffset: 渐变原点相对于中心的偏移量。 radiusX: 渐变的水平半径。 radiusY: 渐变的垂直半径。使用这个结构可以在创建径向渐变刷子时指定渐变的中心、原点偏移以及水平和垂直半径。以下是一个使用 D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES 结构创建径向渐变刷...
Win32 API:D2D1_QUADRATIC_BEZIER_SEGMENT 结构(D2d1.h)
D2D1_QUADRATIC_BEZIER_SEGMENT 是 Direct2D 库中定义的一个结构,用于描述二次贝塞尔曲线的参数。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_QUADRATIC_BEZIER_SEGMENT { D2D1_POINT_2F point1; D2D1_POINT_2F point2;} D2D1_QUADRATIC_BEZIER_SEGMENT;这个结构有以下成员: point1: 二次贝塞尔曲线的控制点。 point2: 二次贝塞尔曲线的终点。使用这个结构可以方便地描述一个二次贝塞尔曲线,然后通过 Direct2D 的绘图接口进行绘制。以下是一个使用 D2D1_QUADRATIC_BEZIER_SEGMENT 结构创建二次贝塞尔曲线的简单示例:#include <d2d1.h>// 假设 pRenderTarget 是一个有效的 ID2D1RenderTarget 指针ID2D1RenderTarget *pRenderTarget;// 创建一个 D2D1_QUADRATIC_BE...
Win32 API:D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 结构(D2d1.h)
D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 是 Direct2D 库中定义的一个结构,用于描述线性渐变刷子的属性。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES { D2D1_POINT_2F startPoint; D2D1_POINT_2F endPoint;} D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;这个结构有以下成员: startPoint: 渐变的起始点坐标。 endPoint: 渐变的结束点坐标。使用这个结构可以在创建线性渐变刷子时指定渐变的起始点和结束点。以下是一个使用 D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 结构创建线性渐变刷子的简单示例:#include <d2d1.h>// 假设 pRenderTarget 是一个有效的 ID2D1RenderTarget 指针ID2D1RenderTarget *pRenderTarget;// 创...
Win32 API:D2D1_LAYER_PARAMETERS 结构(D2d1.h)
D2D1_LAYER_PARAMETERS 是 Direct2D 库中定义的一个结构,用于描述图层(layer)的参数。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_LAYER_PARAMETERS { D2D1_RECT_F contentBounds; ID2D1Geometry *geometricMask; D2D1_ANTIALIAS_MODE maskAntialiasMode; D2D1_MATRIX_3X2_F maskTransform; FLOAT opacity; ID2D1Brush *opacityBrush; D2D1_LAYER_OPTIONS layerOptions;} D2D1_LAYER_PARAMETERS;这个结构有以下成员: contentBounds: 图层的内容边界,以逻辑坐标表示。 geometricMask: 一个指向 ID2D1Geometry 接口的指针,表示图层的几何蒙版。 maskAntiali...
Win32 API:D2D1_HWND_RENDER_TARGET_PROPERTIES 结构(D2d1.h)
D2D1_HWND_RENDER_TARGET_PROPERTIES 是 Direct2D 库中定义的一个结构,用于描述将渲染目标指定为窗口句柄时的属性。该结构在头文件 D2d1.h 中声明。以下是该结构的定义:typedef struct D2D1_HWND_RENDER_TARGET_PROPERTIES { HWND hwnd; D2D1_SIZE_U pixelSize; D2D1_PRESENT_OPTIONS presentOptions;} D2D1_HWND_RENDER_TARGET_PROPERTIES;这个结构有以下成员: hwnd: 指定 Direct2D 渲染目标的窗口句柄。 pixelSize: 指定渲染目标的像素大小,以像素为单位。 presentOptions: 一个值为 D2D1_PRESENT_OPTIONS 类型的成员,表示渲染目标的呈现选项。使用这个结构可以在创建 Direct2D 渲染目标时指定窗口句柄、像素大小和呈现选项等属性。以下是一个使用 D2D1_HWND_RENDER_TARGET_PROPERTI...