Bitmap::InitializePalette 方法 (gdiplusheaders.h)

Bitmap::InitializePalette 方法初始化标准、最佳或自定义调色板。

语法

Status InitializePalette(
  [in, out] ColorPalette *palette,
  [in]      PaletteType  palettetype,
  [in]      INT          optimalColors,
  [in]      BOOL         useTransparentColor,
  [in]      Bitmap       *bitmap
);

参数

[in, out] palette

类型: ColorPalette*

指向缓冲区的指针,该缓冲区包含 ColorPalette 结构,后跟 一个 ARGB 值数组。 必须设置 ColorPalette 结构的 FlagsCount 成员。 ColorPalette 结构的 Entries 成员是一个包含一个 ARGB 值的数组。 必须为 ColorPalette 结构和调色板中的其他 ARGB 值分配内存。 例如,如果调色板有 36 个 ARGB 值,则分配缓冲区,如下所示: malloc(sizeof(ColorPalette) + 35*sizeof(ARGB))

[in] palettetype

类型: PaletteType

PaletteType 枚举的元素,用于指定调色板类型。 调色板可以有多个标准类型之一,也可以是定义的自定义调色板。 此外, Bitmap::InitializePalette 方法可以根据指定的位图创建最佳调色板。

[in] optimalColors

类型: INT

整数,用于根据指定的位图指定要在最佳调色板中具有的颜色数。 如果此参数大于 0,必须将 palettetype 参数设置为 PaletteTypeOptimal,位 参数必须指向 Bitmap 对象。 如果要创建标准或自定义调色板,而不是最佳调色板,请将此参数设置为 0。

[in] useTransparentColor

类型: BOOL

指定是否在调色板中包含透明颜色的布尔值。 设置为 TRUE 以包含透明颜色;否则 为 FALSE

[in] bitmap

类型: 位图*

指向将为其创建最佳调色板的 Bitmap 对象的指针。 如果 palettetype 设置为 PaletteTypeOptimaloptimalColors 设置为正整数,请将此参数设置为 Bitmap 对象的地址。 否则,请将此参数设置为 NULL

返回值

类型: 状态

如果方法成功,则返回 Ok,这是 Status 枚举的元素。

如果 方法失败,它将返回 Status 枚举的其他元素之一。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 gdiplusheaders.h (包括 Gdiplus.h)
Library Gdiplus.lib
DLL Gdiplus.dll

另请参阅

Bitmap