Win32 API:D2D1_PATCH_EDGE_MODE 枚举(D2d1_3.h)
在Win32 API的D2d1_3.h头文件中,D2D1_PATCH_EDGE_MODE 枚举是与 Direct2D 几何图形路径演算法相关的枚举类型。该枚举定义了路径的边缘模式,用于控制渲染时对路径的处理方式。以下是 D2D1_PATCH_EDGE_MODE 枚举的定义:typedef enum D2D1_PATCH_EDGE_MODE{ D2D1_PATCH_EDGE_MODE_ALIASED = 0, D2D1_PATCH_EDGE_MODE_ANTIALIASED = 1,} D2D1_PATCH_EDGE_MODE;这个枚举包含两个成员: D2D1_PATCH_EDGE_MODE_ALIASED: 表示路径的边缘使用锯齿状(aliased)的方式呈现,即不进行抗锯齿处理。 D2D1_PATCH_EDGE_MODE_ANTIALIASED: 表示路径的边缘使用抗锯齿的方式呈现,即进行抗锯齿处理,使得边缘更加平滑。这些选项可以在绘制几何图形路径时用于控制路径边缘的外观。
Win32 API:D2D1_ORIENTATION 枚举(D2d1_3.h)
在Win32 API的D2D1_3.h头文件中,D2D1_ORIENTATION枚举是Direct2D库中的一个枚举类型,用于表示渲染目标的方向。这个枚举类型包括以下常量:typedef enum D2D1_ORIENTATION{ D2D1_ORIENTATION_DEFAULT = 1, D2D1_ORIENTATION_FLIP_HORIZONTAL = 2, D2D1_ORIENTATION_ROTATE_CLOCKWISE180 = 3, D2D1_ORIENTATION_FLIP_VERTICAL = 4, D2D1_ORIENTATION_ROTATE_CLOCKWISE180_FLIP_HORIZONTAL = 5, D2D1_ORIENTATION_ROTATE_CLOCKWISE180_FLIP_VERTICAL = 6, D2D1_ORIENTATION_ROTATE_CLOCKWISE270_FLIP_HORIZONTAL = 7, D2D1_ORIENTATION_ROTATE_CLOCKWISE270_FLIP...
Win32 API:D2D1_INK_NIB_SHAPE 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_INK_NIB_SHAPE 枚举的定义如下:typedef enum D2D1_INK_NIB_SHAPE { D2D1_INK_NIB_SHAPE_ROUND, D2D1_INK_NIB_SHAPE_SQUARE} D2D1_INK_NIB_SHAPE;这个枚举用于表示墨水笔(Ink Pen)笔尖的形状。具体选项包括: D2D1_INK_NIB_SHAPE_ROUND: 表示笔尖是圆形的。 D2D1_INK_NIB_SHAPE_SQUARE: 表示笔尖是方形的。这些选项用于调整墨水笔的外观,以更好地模拟真实笔的效果。墨水笔通常用于手写输入或涂鸦应用程序,用户可以以自然的方式绘制曲线。具体的使用方法和墨水笔 API 的细节可能需要查阅 Direct2D 的官方文档或相关的示例代码。
Win32 API:D2D1_IMAGE_SOURCE_LOADING_OPTIONS 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_IMAGE_SOURCE_LOADING_OPTIONS 枚举的定义如下:typedef enum D2D1_IMAGE_SOURCE_LOADING_OPTIONS { D2D1_IMAGE_SOURCE_LOADING_OPTIONS_NONE = 0, D2D1_IMAGE_SOURCE_LOADING_OPTIONS_RELEASE_SOURCE = 1, D2D1_IMAGE_SOURCE_LOADING_OPTIONS_CACHE_ON_DEMAND = 2, D2D1_IMAGE_SOURCE_LOADING_OPTIONS_FORCE_DWORD = 0xffffffff} D2D1_IMAGE_SOURCE_LOADING_OPTIONS;这个枚举用于表示图像源加载时的选项。具体选项包括: D2D1_IMAGE_SOURCE_LOADING_OPTIONS_NONE: 没有特殊选项,使用默认设置。 D2D1_IMAGE_SOURCE_LOADING_OPTIONS_RELEASE_SOURCE: 当...
Win32 API:D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS 枚举的定义如下:typedef enum D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS { D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_NONE = 0, D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_LOW_QUALITY_PRIMARY_CONVERSION = 1, D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_FORCE_DWORD = 0xffffffff} D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS;这个枚举用于表示从 DXGI 表面创建图像源时的选项。具体选项包括: D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_NONE: 没有特殊选项,使用默认设置。 D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_LOW_QUALITY_PRIMARY_CONVERSION: ...
Win32 API:D2D1_GAMMA1 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_GAMMA1 枚举定义如下:typedef enum D2D1_GAMMA1 { D2D1_GAMMA1_2_2 = 0, D2D1_GAMMA1_1_0 = 1} D2D1_GAMMA1;这个枚举用于表示颜色通道的 gamma 值。具体选项包括: D2D1_GAMMA1_2_2: 表示颜色通道使用 2.2 的 gamma 值。 D2D1_GAMMA1_1_0: 表示颜色通道使用 1.0 的 gamma 值。Gamma 值用于调整颜色通道的响应曲线,影响颜色的显示和渲染效果。使用不同的 gamma 值,可以实现不同的颜色处理效果。具体的使用方法和 gamma 相关的 API 细节可能需要查阅 Direct2D 的官方文档或相关的示例代码。
Win32 API:D2D1_COLOR_CONTEXT_TYPE 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_COLOR_CONTEXT_TYPE 枚举的定义如下:typedef enum D2D1_COLOR_CONTEXT_TYPE { D2D1_COLOR_CONTEXT_TYPE_ICC, D2D1_COLOR_CONTEXT_TYPE_SIMPLE} D2D1_COLOR_CONTEXT_TYPE;这个枚举用于表示颜色上下文的类型。具体选项包括: D2D1_COLOR_CONTEXT_TYPE_ICC: 表示颜色上下文是基于 ICC(International Color Consortium)颜色配置文件的。 D2D1_COLOR_CONTEXT_TYPE_SIMPLE: 表示颜色上下文是基于简单的颜色数据的。颜色上下文在图形渲染中用于描述颜色空间和颜色处理的方式。使用不同的颜色上下文类型,可以实现不同的颜色管理和渲染效果。具体的使用方法和颜色上下文相关的 API 细节可能需要查阅 Direct2D 的官方文档或相关的示例代码。
Win32 API:D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION 枚举(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION 枚举的定义如下:typedef enum D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION { D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DEFAULT = 0, D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DISABLE = 1, D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_ENABLE_NEAREST_NEIGHBOR = 2} D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION;这个枚举用于表示颜色位图字形的对齐选项。具体选项包括: D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DEFAULT: 使用默认的对齐选项。 D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DISABLE: 禁用对齐。 D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_ENABLE...
Win32 API:D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES 结构(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES 结构定义如下:typedef struct D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES { D2D1_ORIENTATION orientation; D2D1_SIZE_F scale; D2D1_POINT_2F centerPoint; D2D1_MATRIX_3X2_F interpolationMode;} D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES;这个结构用于描述转换后的图像源的属性。各个成员的含义如下: orientation: 表示图像的方向,是一个 D2D1_ORIENTATION 枚举值,指定图像的旋转方式。 scale: 表示图像的缩放比例,是一个 D2D1_SIZE_F 结构,指定图像在 X 和 Y 方向上的缩放比例。 centerPoint: 表示图像的中心点,是一个 D2D1_POINT_2F 结构,指定图像的旋转中...
Win32 API:D2D1_INK_STYLE_PROPERTIES 结构(D2d1_3.h)
在 Direct2D 头文件 D2d1_3.h 中,D2D1_INK_STYLE_PROPERTIES 结构定义如下:typedef struct D2D1_INK_STYLE_PROPERTIES { D2D1_INK_NIB_SHAPE nibShape; FLOAT nibTransform; FLOAT nibTranformAngle; FLOAT nibRadius; FLOAT nibAngle; FLOAT nibScale;} D2D1_INK_STYLE_PROPERTIES;这个结构用于描述墨水笔(Ink Pen)的样式属性。成员变量的含义如下: nibShape: 表示笔尖的形状,是一个 D2D1_INK_NIB_SHAPE 枚举值,可以是 D2D1_INK_NIB_SHAPE_ROUND(圆形)或 D2D1_INK_NIB_SHAPE_SQUARE(方形)。 nibTransform: 笔尖的变换,指定笔尖的缩放值。 n...
Win32 API:D2D1_INK_BEZIER_SEGMENT 结构(D2d1_3.h)
D2D1_INK_BEZIER_SEGMENT 结构是 Direct2D 库中的一个结构,用于表示用于墨水笔描绘的贝塞尔曲线段。这个结构通常在 Direct2D 的墨水笔(Ink Pen) API 中使用,用于描述墨水笔的绘制路径。以下是 D2D1_INK_BEZIER_SEGMENT 结构的定义:typedef struct D2D1_INK_BEZIER_SEGMENT { D2D1_POINT_2F point1; D2D1_POINT_2F point2; D2D1_POINT_2F point3;} D2D1_INK_BEZIER_SEGMENT;这个结构包含三个成员变量: point1: 表示贝塞尔曲线的第一个控制点。 point2: 表示贝塞尔曲线的第二个控制点。 point3: 表示贝塞尔曲线的结束点。这个结构用于定义贝塞尔曲线段,可以通过连接多个这样的曲线段来创建墨水笔的路径。墨水笔通常用于手写输入或涂鸦应用程序,允许用户以自然的方式绘制曲线。具体的使用方法和墨水笔 API 的细节可能需要查阅 Direct2D 的官方文档或相关的示例代码。
Win32 API:D2D1_GRADIENT_MESH_PATCH 结构(D2d1_3.h)
D2D1_GRADIENT_MESH_PATCH 结构是 Direct2D 库中的一个结构,用于表示渐变网格中的单个图元。这个结构通常用于渐变网格的创建和操作。在 D2d1_3.h 头文件中定义了这个结构。以下是 D2D1_GRADIENT_MESH_PATCH 结构的定义:typedef struct D2D1_GRADIENT_MESH_PATCH { D2D1_RECT_F point00; D2D1_RECT_F point01; D2D1_RECT_F point02; D2D1_RECT_F point03; D2D1_RECT_F point10; D2D1_RECT_F point11; D2D1_RECT_F point12; D2D1_RECT_F point13; D2D1_RECT_F point20; D2D1_RECT_F point21; D2D1_RECT_F point22; D2D1_RECT_F point23; D2D1_RECT_F point30; D2D1_RECT_F point31; D2D1_RECT_F...
Win32 API:ID2D1GeometryRealization 接口(D2d1_2.h)
ID2D1GeometryRealization 接口是 Direct2D 库中的一个接口,用于表示几何图形的实现。该接口在 D2d1_2.h 头文件中声明。以下是 ID2D1GeometryRealization 接口的简要定义:DECLARE_INTERFACE_(ID2D1GeometryRealization, ID2D1Resource){ STDMETHOD_(void, GetBounds)( _Out_ D2D1_RECT_F *bounds ) PURE; STDMETHOD_(void, GetWidenedBounds)( FLOAT strokeWidth, _In_opt_ ID2D1StrokeStyle *strokeStyle, _In_opt_ CONST D2D1_MATRIX_3X2_F *worldTransform, _Out_ D2D1_RECT_F *bounds ) PURE;};主要方法: GetBounds: 获取实现的几何图...
Win32 API:ID2D1Factory2 接口(D2d1_2.h)
ID2D1Factory2 接口是 Direct2D 库中的一个接口,用于表示 Direct2D 工厂。该接口在 D2d1_2.h 头文件中声明。以下是 ID2D1Factory2 接口的简要定义:DECLARE_INTERFACE_(ID2D1Factory2, ID2D1Factory1){ STDMETHOD(CreateDevice)( _In_ IDXGIDevice *dxgiDevice, _Outptr_ ID2D1Device1 **d2dDevice1 ) PURE; STDMETHOD(CreateStrokeStyle)( _In_ CONST D2D1_STROKE_STYLE_PROPERTIES1 *strokeStyleProperties, _In_reads_opt_(dashesCount) CONST FLOAT *dashes, UINT32 dashesCount, _Outptr_ ID2D1StrokeStyle1 **strok...
Win32 API:ID2D1DeviceContext1 接口(D2d1_2.h)
ID2D1DeviceContext1 接口是 Direct2D 库中的一个接口,用于表示 Direct2D 设备上下文。该接口在 D2d1_2.h 头文件中声明。以下是 ID2D1DeviceContext1 接口的简要定义:DECLARE_INTERFACE_(ID2D1DeviceContext1, ID2D1DeviceContext){ STDMETHOD(CreateFilledGeometryRealization)( _In_ ID2D1Geometry *geometry, FLOAT flatteningTolerance, _Outptr_ ID2D1GeometryRealization **geometryRealization ) PURE; STDMETHOD(CreateStrokedGeometryRealization)( _In_ ID2D1Geometry *geometry, FLOAT flatteningTolerance, FLO...
Win32 API:ID2D1Device1 接口(D2d1_2.h)
ID2D1Device1 接口是 Direct2D 库中的一个接口,用于表示 Direct2D 渲染设备。该接口在 D2d1_2.h 头文件中声明。以下是 ID2D1Device1 接口的简要定义:DECLARE_INTERFACE_(ID2D1Device1, ID2D1Device){ STDMETHOD(CreateDeviceContext)( D2D1_DEVICE_CONTEXT_OPTIONS options, _Outptr_ ID2D1DeviceContext1 **deviceContext1 ) PURE; STDMETHOD(CreatePrintControl)( _In_ IWICImagingFactory * wicFactory, _In_ IPrintDocumentPackageTarget * target, _Outptr_ IPrintControl ** printControl ) PURE;};主要方法: CreateDevi...
Win32 API:ID2D1CommandSink1 接口(D2d1_2.h)
ID2D1CommandSink1 接口是 Direct2D 库中的一个接口,用于处理图形绘制命令。这个接口在 D2d1_2.h 头文件中声明。以下是 ID2D1CommandSink1 接口的简要定义:DECLARE_INTERFACE_(ID2D1CommandSink1, ID2D1CommandSink){ STDMETHOD_(void, AddGradientMesh)( _In_ ID2D1GradientMesh *gradientMesh ) PURE;};该接口派生自 ID2D1CommandSink 接口,扩展了对渐变网格的支持。渐变网格是 Direct2D 中的一个高级渲染特性,允许使用复杂的渐变来填充图形。主要方法: AddGradientMesh: 通知命令接收器添加一个渐变网格。渐变网格包含了渐变信息,可以用于填充图形。ID2D1CommandSink1 接口的主要用途是允许应用程序捕获绘图命令,以便进行一些额外的处理或记录。在处理绘图命令时,可以使用此接口来添加渐变网格。请注意,使用这些接口需要了解 Direct2D 渲...
Win32 API:D2D1_RENDERING_PRIORITY 枚举(D2d1_2.h)
D2D1_RENDERING_PRIORITY 是一个枚举类型,定义了 Direct2D 库中用于设定渲染优先级的常量。这个枚举在 D2d1_2.h 头文件中声明。以下是 D2D1_RENDERING_PRIORITY 枚举的定义:typedef enum D2D1_RENDERING_PRIORITY { D2D1_RENDERING_PRIORITY_NORMAL = 0, D2D1_RENDERING_PRIORITY_LOW = 1, D2D1_RENDERING_PRIORITY_FORCE_DWORD = 0xffffffff} D2D1_RENDERING_PRIORITY;这个枚举定义了以下常量: D2D1_RENDERING_PRIORITY_NORMAL: 正常渲染优先级。在大多数情况下,使用这个值即可。 D2D1_RENDERING_PRIORITY_LOW: 低渲染优先级。当系统资源有限时,可以选择使用低优先级来减少对资源的竞争。 D2D1_RENDERING_PRIORITY_FORCE_DWORD: 保留的常量,用于强制将枚举大小设为 3...
Win32 API:D2D1ComputeMaximumScaleFactor 函数(D2d1_2.h)
D2D1ComputeMaximumScaleFactor 是 Direct2D 库中的一个函数,用于计算指定的矩阵(通常是转换矩阵)的最大比例因子。这个函数在 D2d1_2.h 头文件中声明,是 Direct2D 库的一部分。以下是该函数的简要说明:HRESULT D2D1ComputeMaximumScaleFactor( D2D1_MATRIX_4X4_F matrix, FLOAT *scaleFactor);参数说明: matrix: 传入的矩阵,通常是一个 4x4 的矩阵,表示图形的变换。 scaleFactor: 用于存储计算得到的最大比例因子的指针。返回值: 如果函数成功,返回 S_OK。 如果 matrix 不可逆,或者 scaleFactor 参数为 NULL,返回 E_INVALIDARG。 其他错误情况可能返回其他 HRESULT 值,具体可参考函数的文档。这个函数的主要用途是在图形变换中确定最大的缩放比例因子。在某些情况下,你可能希望限制图形的缩放,以防止图形变得过大。通过使用这个函数,你可以获得在给定的矩阵变换下,可以应用的最大缩放因...
Win32 API:Vector4F 函数(D2d1_1helper.h)
Win32 API的Vector4F函数实际上是Direct2D图形库中的一个结构体,定义在D2d1_1helper.h头文件中。这个结构体用于表示四维向量,通常用于颜色的表示或者其他需要四个分量的数学计算。以下是Vector4F结构体的定义:struct D2D1_VECTOR_4F{ FLOAT x; FLOAT y; FLOAT z; FLOAT w;};这个结构体有四个成员变量,分别表示向量的四个分量,即x、y、z和w。在使用时,你可以创建一个D2D1_VECTOR_4F类型的变量,并设置其成员变量的值,例如:#include <D2d1_1helper.h>// 创建一个Vector4F变量,并设置其分量值D2D1_VECTOR_4F myVector = { 0.5f, 0.3f, 0.8f, 1.0f };这里myVector就是一个四维向量,其分量分别为0.5、0.3、0.8和1.0。需要注意的是,这个结构体通常在Direct2D的图形编程中使用,如果你需要更详细的信息,可以查阅相关的Direct2D文档。