gpt4 book ai didi

c++ - 调色板图像需要有效的调色板

转载 作者:行者123 更新时间:2023-11-30 17:26:38 27 4
gpt4 key购买 nike

当使用 libpng 编写使用调色板 (PNG_COLOR_TYPE_PALETTE) 的 PNG 图像时,我看到错误:

valid palette required for paletted images

是什么原因导致此问题以及如何解决它?

最佳答案

确保在调用 png_write_info 之前调用 png_set_PLTE

例如:

// Set the colour palette to use
unsigned paletteSize = ...;

assert(paletteSize <= PNG_MAX_PALETTE_LENGTH);

png_color* palette = (png_color*)png_malloc(png_ptr, paletteSize*sizeof(png_color));

for (unsigned p = 0; p < paletteSize; p++)
{
png_color* col = &palette[p];
col->red = ...;
col->green = ...;
col->blue = ...;
}

png_set_PLTE(png_ptr, info_ptr, palette, paletteSize);

png_write_info(png_ptr, info_ptr);

// ... png_write_image, png_write_end

png_destroy_write_struct(&png_ptr, &info_ptr);

png_free(png_ptr, palette);

关于c++ - 调色板图像需要有效的调色板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26700313/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com