Win32 API:D2D1_STROKE_TRANSFORM_TYPE 枚举(D2d1_1.h)
D2D1_STROKE_TRANSFORM_TYPE 枚举用于指定 Direct2D 中描边(stroke)的变换类型。以下是 D2D1_STROKE_TRANSFORM_TYPE 枚举的定义:typedef enum D2D1_STROKE_TRANSFORM_TYPE { D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0, D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1, D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2, D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD = 0xffffffff} D2D1_STROKE_TRANSFORM_TYPE;这个枚举包含以下成员: D2D1_STROKE_TRANSFORM_TYPE_NORMAL: 普通的描边变换,取决于图形状态。 D2D1_STROKE_TRANSFORM_TYPE_FIXED: 固定的描边变换,独立于图形状态。这种变换不会受到图形状态(例如缩放、旋转等)的影响。 D2D1_STROK...
Win32 API:D2D1_PROPERTY_TYPE 枚举(D2d1_1.h)
D2D1_PROPERTY_TYPE 枚举用于指定 Direct2D 属性(property)的类型。以下是 D2D1_PROPERTY_TYPE 枚举的定义:typedef enum D2D1_PROPERTY_TYPE { D2D1_PROPERTY_TYPE_UNKNOWN = 0, D2D1_PROPERTY_TYPE_STRING = 1, D2D1_PROPERTY_TYPE_BOOL = 2, D2D1_PROPERTY_TYPE_UINT32 = 3, D2D1_PROPERTY_TYPE_FLOAT = 4, D2D1_PROPERTY_TYPE_VECTOR2 = 5, D2D1_PROPERTY_TYPE_VECTOR3 = 6, D2D1_PROPERTY_TYPE_VECTOR4 = 7, D2D1_PROPERTY_TYPE_BLOB = 8, D2D1_PROPERTY_TYPE_IUNKNOWN = 9, D2D1_PROPERTY_TYPE_ENUM = 10, D2D1_PROP...
Win32 API:D2D1_PRIMITIVE_BLEND 枚举(D2d1_1.h)
D2D1_PRIMITIVE_BLEND 枚举用于指定 Direct2D 中图元(primitive)的混合方式。以下是 D2D1_PRIMITIVE_BLEND 枚举的定义:typedef enum D2D1_PRIMITIVE_BLEND { D2D1_PRIMITIVE_BLEND_SOURCE_OVER, D2D1_PRIMITIVE_BLEND_COPY, D2D1_PRIMITIVE_BLEND_MIN, D2D1_PRIMITIVE_BLEND_ADD, D2D1_PRIMITIVE_BLEND_MAX, D2D1_PRIMITIVE_BLEND_FORCE_DWORD} ;这个枚举包含以下成员: D2D1_PRIMITIVE_BLEND_SOURCE_OVER: 标准源覆盖混合。 D2D1_PRIMITIVE_BLEND_COPY: 使用新的像素完全替换已有像素。 D2D1_PRIMITIVE_BLEND_MIN: 取已有像素和新像素颜色的最小值。 D2D1_PRIMITIVE_BLEND_ADD: 将已有像素和新像素颜色相加。 D2D1_PRIMITIVE...
Win32 API:D2D1_MAP_OPTIONS 枚举(D2d1_1.h)
D2D1_MAP_OPTIONS 枚举用于指定 Direct2D 中映射资源时的选项。以下是 D2D1_MAP_OPTIONS 枚举的定义:typedef enum D2D1_MAP_OPTIONS { D2D1_MAP_OPTIONS_NONE = 0x00000000, D2D1_MAP_OPTIONS_READ = 0x00000001, D2D1_MAP_OPTIONS_WRITE = 0x00000002, D2D1_MAP_OPTIONS_DISCARD = 0x00000004, D2D1_MAP_OPTIONS_FORCE_DWORD = 0xffffffff} ;这个枚举包含以下成员: D2D1_MAP_OPTIONS_NONE: 表示没有特殊选项,使用默认设置。 D2D1_MAP_OPTIONS_READ: 表示映射时允许读取资源的内容。 D2D1_MAP_OPTIONS_WRITE: 表示映射时允许写入资源的内容。 D2D1_MAP_OPTIONS_DISCARD: 表示映射时会丢弃资源...
Win32 API:D2D1_INTERPOLATION_MODE 枚举(D2d1_1.h)
D2D1_INTERPOLATION_MODE 枚举是用于 Direct2D 的 Win32 API 中,用于指定插值模式的枚举类型。以下是 D2D1_INTERPOLATION_MODE 枚举的定义:typedef enum D2D1_INTERPOLATION_MODE { D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR, D2D1_INTERPOLATION_MODE_LINEAR, D2D1_INTERPOLATION_MODE_CUBIC, D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR, D2D1_INTERPOLATION_MODE_ANISOTROPIC, D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC, D2D1_INTERPOLATION_MODE_FORCE_DWORD} ;这个枚举包含以下成员: D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR: 最近邻插值,使用最近的像素颜色。 D2D1_INTERPOL...
Win32 API:D2D1_COLOR_INTERPOLATION_MODE 枚举(D2d1_1.h)
D2D1_COLOR_INTERPOLATION_MODE 枚举是用于 Direct2D 的 Win32 API 中的一个枚举类型,它用于指定颜色插值的模式。以下是 D2D1_COLOR_INTERPOLATION_MODE 枚举的定义:typedef enum D2D1_COLOR_INTERPOLATION_MODE { D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT, D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED} ;这个枚举包含两个成员: D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT: 表示颜色插值时使用直接插值。在直接插值模式下,颜色的每个分量都独立地进行线性插值。 D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED: 表示颜色插值时使用预乘插值。在预乘插值模式下,颜色的每个分量都乘以其 alpha 值,然后再进行线性插值。这个枚举通常用在 Direct2D 渲染时的相关函数中,例如在创建画笔(ID2D1Brush)时,可以通过 Se...
Win32 API:D2D1_BITMAP_OPTIONS 枚举(D2d1_1.h)
D2D1_BITMAP_OPTIONS 枚举是 Win32 API 中 Direct2D 图片位图的选项之一,它用于在创建位图时指定位图的属性和行为。以下是 D2D1_BITMAP_OPTIONS 枚举的定义:typedef enum D2D1_BITMAP_OPTIONS { D2D1_BITMAP_OPTIONS_NONE = 0x00000000, D2D1_BITMAP_OPTIONS_TARGET = 0x00000001, D2D1_BITMAP_OPTIONS_CANNOT_DRAW = 0x00000002, D2D1_BITMAP_OPTIONS_CPU_READ = 0x00000004, D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE = 0x00000008, D2D1_BITMAP_OPTIONS_FORCE_DWORD = 0xffffffff} ;这个枚举有以下几个成员: D2D1_BITMAP_OPTIONS_NONE: 无特殊选项,位图的默认行为。 D2D1_BITMAP_OPTIONS_TARGET: 表示位图可作为...
Win32 API:D2D1_STROKE_STYLE_PROPERTIES1 结构(D2d1_1.h)
D2D1_STROKE_STYLE_PROPERTIES1 是 Direct2D 库中的一个结构体,用于定义描边样式的属性。这个结构体的定义通常可以在 D2d1_1.h 头文件中找到。以下是 D2D1_STROKE_STYLE_PROPERTIES1 结构体的典型定义:typedef struct D2D1_STROKE_STYLE_PROPERTIES1{ 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_TRANSFORM_TYPE transformType;} D2D1_STROKE_STYLE_PROPERTIES1;这个结构体有八个成员,用于描述描边样式的各个属性:1. startCap:指定线段的起始端点样式,它是一个 D2D1_CAP...
Win32 API:D2D1_RENDERING_CONTROLS 结构(D2d1_1.h)
D2D1_RENDERING_CONTROLS 是 Direct2D 库中的一个结构体,它用于定义渲染控制参数。该结构体的定义通常在 D2d1_1.h 头文件中。以下是 D2D1_RENDERING_CONTROLS 结构体的典型定义:typedef struct D2D1_RENDERING_CONTROLS{ D2D1_RENDER_POLICY renderPolicy; D2D1_BUFFER_PRECISION bufferPrecision; D2D1_SIZE_U tileSize;} D2D1_RENDERING_CONTROLS;这个结构体有三个成员:1. renderPolicy:指定渲染策略,它是一个 D2D1_RENDER_POLICY 枚举类型的值。该枚举定义了渲染的策略,例如是否优化为质量、速度或默认。2. bufferPrecision:指定缓冲区精度,它是一个 D2D1_BUFFER_PRECISION 枚举类型的值。该枚举定义了缓冲区的精度,例如是否使用浮点数还是定点数。3. tileSize:指定瓦片的大小,它是一个 D2D1_SI...
Win32 API:D2D1_MAPPED_RECT 结构(D2d1_1.h)
D2D1_MAPPED_RECT 结构体是在 Win32 API 的 Direct2D 图形库中用于描述位图锁定时的映射矩形的结构体。以下是该结构体的定义:struct D2D1_MAPPED_RECT{ INT32 pitch; BYTE *bits;};该结构体包含以下成员:1. pitch:一个表示映射矩形行之间的跨距的整数值(以像素为单位)。2. bits:指向映射矩形的位图数据的指针。这个结构体通常在使用 ID2D1Bitmap1 的 Map 方法时返回,该方法用于锁定位图的缓冲区,以便在缓冲区中直接进行像素数据的读写操作。以下是一个简单的示例,展示了如何使用 D2D1_MAPPED_RECT 结构体:// 获取位图引用ID2D1Bitmap1* bitmap = /* 获取位图的方法 */;// 定义 D2D1_MAPPED_RECT 结构体D2D1_MAPPED_RECT mappedRect;// 锁定位图HRESULT hr = bitmap->Map(D2D1_MAP_OPTIONS_READ, &mappedRect);// 检查锁定是否...
Win32 API:D2D1_LAYER_PARAMETERS1 结构(D2d1_1.h)
D2D1_LAYER_PARAMETERS1 结构体是在 Win32 API 的 Direct2D 图形库中用于描述图层参数的结构体。以下是该结构体的定义:struct D2D1_LAYER_PARAMETERS1{ D2D1_RECT_F contentBounds; ID2D1Geometry *geometricMask; D2D1_ANTIALIAS_MODE maskAntialiasMode; D2D1_MATRIX_4X4_F maskTransform; FLOAT opacity; ID2D1Brush *opacityBrush; D2D1_LAYER_OPTIONS1 layerOptions;};该结构体包含以下成员:1. contentBounds:一个 D2D1_RECT_F 结构体,表示图层的内容边界。2. geometricMask:指向表示几何图形的 ID2D1Geometry 接口的指针,用作图层的蒙版。3. maskAntialiasMode:一个 D2D1_ANTIALIAS_MODE 枚举值,表示蒙版的...
Win32 API:D2D1_IMAGE_BRUSH_PROPERTIES 结构(D2d1_1.h)
在 Win32 API 的 Direct2D 图形库中,D2D1_IMAGE_BRUSH_PROPERTIES 结构体是用于定义图像刷属性的结构体。以下是该结构体的定义:struct D2D1_IMAGE_BRUSH_PROPERTIES{ D2D1_EXTEND_MODE extendModeX; D2D1_EXTEND_MODE extendModeY; D2D1_INTERPOLATION_MODE interpolationMode;};该结构体包含以下成员:1. extendModeX:指定在 X 轴上的平铺方式,可以是 D2D1_EXTEND_MODE 枚举值之一,如 D2D1_EXTEND_MODE_CLAMP。2. extendModeY:指定在 Y 轴上的平铺方式,可以是 D2D1_EXTEND_MODE 枚举值之一。3. interpolationMode:指定图像刷的插值模式,可以是 D2D1_INTERPOLATION_MODE 枚举值之一,如 D2D1_INTERPOLATION_MODE_LINEAR。这个结构体通常在创建图像刷时用于设置相...
Win32 API:D2D1_EFFECT_INPUT_DESCRIPTION 结构(D2d1_1.h)
在 Win32 API 的 Direct2D 图形库中,D2D1_EFFECT_INPUT_DESCRIPTION 结构体是用于描述图形效果输入的结构体。以下是该结构体的定义:struct D2D1_EFFECT_INPUT_DESCRIPTION{ ID2D1Effect *effect; UINT32 inputIndex; D2D1_RECT_F inputRectangle;};该结构体包含以下成员:1. effect:指向表示效果的 ID2D1Effect 接口的指针。2. inputIndex:表示效果的输入索引。3. inputRectangle:一个 D2D1_RECT_F 结构体,表示输入矩形的区域。这个结构体通常在创建图形效果时用于描述效果的输入。例如,可以在调用 ID2D1DeviceContext 的 CreateEffect 方法时传递一个 D2D1_EFFECT_INPUT_DESCRIPTION 结构体,以定义效果的输入。
Win32 API:D2D1_DRAWING_STATE_DESCRIPTION1 结构(D2d1_1.h)
在 Win32 API 的 Direct2D 图形库中,D2D1_DRAWING_STATE_DESCRIPTION1 结构体是用于定义绘制状态的结构体。以下是该结构体的定义:struct D2D1_DRAWING_STATE_DESCRIPTION1{ D2D1_ANTIALIAS_MODE antialiasMode; D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; D2D1_TAG tag1; D2D1_TAG tag2; D2D1_MATRIX_4X4_F transform;};该结构体包含以下成员:1. antialiasMode:一个 D2D1_ANTIALIAS_MODE 枚举值,表示反锯齿模式。2. textAntialiasMode:一个 D2D1_TEXT_ANTIALIAS_MODE 枚举值,表示文本的反锯齿模式。3. tag1 和 tag2:用于标记绘制状态的标签。4. transform:一个 D2D1_MATRIX_4X4_F 结构体,表示绘制时的变换矩阵。这个结构体通常在绘制时用于设置...
Win32 API:D2D1_CREATION_PROPERTIES 结构(D2d1_1.h)
D2D1_CREATION_PROPERTIES 结构体是在 Direct2D 图形库中用于定义创建设备时的属性的结构体。以下是该结构体的定义:struct D2D1_CREATION_PROPERTIES{ D2D1_THREADING_MODE threadingMode; D2D1_DEBUG_LEVEL debugLevel; D2D1_DEVICE_CONTEXT_OPTIONS options;};该结构体包含以下成员:1. threadingMode:一个 D2D1_THREADING_MODE 枚举值,表示 Direct2D 设备的线程模式,例如单线程模式或多线程模式。2. debugLevel:一个 D2D1_DEBUG_LEVEL 枚举值,表示 Direct2D 的调试级别,用于开启或关闭调试输出。3. options:一个 D2D1_DEVICE_CONTEXT_OPTIONS 枚举值,表示设备上下文的选项。这个结构体通常在创建 Direct2D 设备时用于设置相关的属性。例如,可以在调用 D2D1CreateDevice 函数时传递一个 D2D...
Win32 API:D2D1_BITMAP_PROPERTIES1 结构(D2d1_1.h)
D2D1_BITMAP_PROPERTIES1 结构体是在 Direct2D 图形库中用于定义位图属性的结构体。以下是该结构体的定义:struct D2D1_BITMAP_PROPERTIES1{ D2D1_PIXEL_FORMAT pixelFormat; FLOAT dpiX; FLOAT dpiY; D2D1_BITMAP_OPTIONS bitmapOptions; HANDLE colorContext;};该结构体包含以下成员:1. pixelFormat:一个 D2D1_PIXEL_FORMAT 结构体,用于描述位图的像素格式,包括像素格式类型和通道的位数等信息。2. dpiX:位图的水平分辨率(每英寸的点数)。3. dpiY:位图的垂直分辨率(每英寸的点数)。4. bitmapOptions:一个 D2D1_BITMAP_OPTIONS 枚举值,表示位图的选项,例如是否支持锁定位图的缓冲区。5. colorContext:一个颜色上下文的句柄,用于指定位图的颜色空间。这个结构体通常在创建位图时用于指定位图的属性。例如,使用 ID2D1Ren...
Win32 API:D2D1_BITMAP_BRUSH_PROPERTIES1 结构(D2d1_1.h)
在 Win32 API 中的 Direct2D 图形库中,D2D1_BITMAP_BRUSH_PROPERTIES1 结构是用于定义位图刷属性的结构体。以下是该结构体的定义:struct D2D1_BITMAP_BRUSH_PROPERTIES1{ D2D1_EXTEND_MODE extendModeX; D2D1_EXTEND_MODE extendModeY; D2D1_INTERPOLATION_MODE interpolationMode;};该结构体有三个成员:1. extendModeX:指定在 X 轴上的平铺方式,可以是 D2D1_EXTEND_MODE 枚举值之一,如 D2D1_EXTEND_MODE_CLAMP。2. extendModeY:指定在 Y 轴上的平铺方式,可以是 D2D1_EXTEND_MODE 枚举值之一。3. interpolationMode:指定位图刷的插值模式,可以是 D2D1_INTERPOLATION_MODE 枚举值之一,如 D2D1_INTERPOLATION_MODE_LINEAR。这个结构体通常在创建位图刷时...
Win32 API:PD2D1_EFFECT_FACTORY 回调函数(D2d1_1.h)
在 Win32 API 的 Direct2D 图形库中,关于 PD2D1_EFFECT_FACTORY 的回调函数的信息不太明确。通常,PD2D1_EFFECT_FACTORY 是一个指向 ID2D1EffectFactory 接口的指针类型,而不是一个回调函数类型。ID2D1EffectFactory 接口表示 Direct2D 中的效果工厂,用于创建图形效果对象。效果工厂通过 CreateEffect 方法创建效果实例,这个实例可以用于在 Direct2D 上下文中应用图形效果。以下是 ID2D1EffectFactory 接口的一般形式:interface ID2D1EffectFactory : public ID2D1Properties{ STDMETHOD(CreateEffect)( _In_ REFCLSID effectId, _COM_Outptr_ ID2D1Effect **effect ) PURE; // 其他方法...};上述代码中,CreateEffect 方法用于创建指定 effectId 的效...
Win32 API:D2D1CreateDeviceContext 函数(D2d1_1.h)
在 Win32 API 中,D2D1CreateDeviceContext 函数用于创建 Direct2D 设备上下文。这个函数通常用于初始化一个 Direct2D 渲染目标,使得你可以在其上进行图形绘制。以下是该函数的基本信息:D2D1CreateDeviceContext 函数概述:HRESULT D2D1CreateDeviceContext( ID2D1Device *d2dDevice, D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext **d2dDeviceContext);参数: d2dDevice:一个指向已经创建的 ID2D1Device 接口的指针,表示该设备上下文所属的 Direct2D 设备。 options:一个枚举值,表示设备上下文的选项。通常使用 D2D1_DEVICE_CONTEXT_OPTIONS_NONE。 d2dDeviceContext:用于存储创建的 ID2D1DeviceContext 接口的指针。返回值: 如果成功,函数返回 S_OK。 如果失败,函数返回相应的错误代码,可...
Win32 API:D2D1CreateDevice 函数(D2d1_1.h)
在Win32 API中,D2D1CreateDevice 函数是用于创建Direct2D设备的函数。这个函数通常用于初始化Direct2D的设备对象,以便进行图形渲染。以下是该函数的基本信息:D2D1CreateDevice 函数概述:HRESULT D2D1CreateDevice( IDXGIDevice *dxgiDevice, CONST D2D1_CREATION_PROPERTIES *creationProperties, ID2D1Device **d2dDevice);参数: dxgiDevice:一个指向已经创建的 DXGI 设备(IDXGIDevice 接口)的指针。 creationProperties:一个指向 D2D1_CREATION_PROPERTIES 结构的指针,包含有关创建设备的属性信息。 d2dDevice:用于存储创建的 ID2D1Device 接口的指针。返回值: 如果成功,函数返回 S_OK。 如果失败,函数返回相应的错误代码,可以使用 HRESULT 宏函数进行检查。示例用法:// 初...