我想使用pygame手动创建 colored颜色 索引图像(调色板)并将其保存为PNG文件:

# create the bitmap
res = pygame.Surface((src.width, src.height), depth=8)

# create the palette
res.set_palette([pygame.Color((0, 0, 0, 0)), ...])

pygame.image.save(res, "test.png")

但我得到:

error: cannot set palette without pygame.display initialized

set_palette线上.

当然,初始化一些虚拟显示并不困难,但我不明白为什么会这样.没有显示任何内容,在我的代码中似乎没有任何内容依赖于显示...

此外,在操作32位曲面时初始化pygame或display是完全无用的.他们之间有什么区别?

推荐答案

原因是pygame消息人士这么说:)

但我找不到任何必要的理由,所以我最近取消了https://github.com/pygame/pygame/pull/3259号登机牌.

所以在下一个pygame版本中不会出现这种情况.

Python相关问答推荐

线性模型PanelOLS和statmodels OLS之间的区别

Polars LazyFrame在收集后未返回指定的模式顺序

rame中不兼容的d类型

如何获取TFIDF Transformer中的值?

在线条上绘制表面

NP.round解算数据后NP.unique

让函数调用方程

CommandeError:模块numba没有属性generated_jit''''

Maya Python脚本将纹理应用于所有对象,而不是选定对象

为什么常规操作不以其就地对应操作为基础?

为什么'if x is None:pass'比'x is None'单独使用更快?

使用Openpyxl从Excel中的折线图更改图表样式

如何将相同组的值添加到嵌套的Pandas Maprame的倒数第二个索引级别

如何编辑此代码,使其从多个EXCEL文件的特定工作表中提取数据以显示在单独的文件中

Python协议不兼容警告

来自Airflow Connection的额外参数

为什么在Python中00是一个有效的整数?

按列表分组到新列中

如何使用Polars从AWS S3读取镶木地板文件

根据两个lambda条件筛选组并根据条件创建新列的最佳方式是什么?