Pillow PNG格式
2021-07-09 16:16 更新
Pillow 可以识别、读取和写入包含 1
, L
, LA
, I
, P
, RGB
或 RGBA
数据。从v1.1.7开始支持交错文件。
从Pillow6.0开始,可以从PNG图像读取exif数据。但是,与其他图像格式不同的是,exif数据不能保证存在 info
直到 load()
被调用。
默认情况下,Pillow不允许加载截断的PNG文件,可以设置 ImageFile.LOAD_TRUNCATED_IMAGES
来覆盖它。
这个 open()
函数可以在适当时设置以下内容 info
属性:
-
chromaticity
色度点,作为浮点数的8元组。( White Point X , White Point Y , Red X , Red Y , Green X , Green Y , Blue X , Blue Y )
-
gamma
gamma,作为浮点数给出。 -
srgb
作为整数的 sRGB 渲染意图 - 0感性
- 1相对比色法
- 2饱和度
- 3绝对比色法
transparency
对于 P
图像:全透明像素的调色板索引,或每个调色板条目的带alpha值的字节字符串。
对于 1
, L
, I
和 RGB
图像,表示此图像中完全透明像素的颜色。
如果图像不是透明调色板图像,则省略此键。
open
也设置Image.text
到的值的字典 tEXt
, zTXt
和 iTXt
PNG图像的块。单个压缩块的解压缩大小限制为PngImagePlugin.MAX_TEXT_CHUNK
。默认为1MB,以防止减压炸弹。此外,所有文本块的总大小限制为 PngImagePlugin.MAX_TEXT_MEMORY
,默认为64MB。
这个 save()
方法支持以下选项:
-
optimize
如果存在且为真,则指示 PNG 编写器使输出文件尽可能小。这包括为了找到最佳编码器设置而进行的额外处理。 -
transparency
对于 P
,1
, L
, I
和 RGB
图像,此选项控制图像中要标记为透明的颜色。
对于P图像,这可以是调色板索引,也可以是带有每个调色板条目的 alpha 值的字节字符串。 -
dpi
在每个方向上对应于所需dpi的两个数的元组。
-
pnginfo
PIL.PngImagePlugin.PngInfo
包含文本标记的实例。 -
compress_level
zlib压缩级别,介于0和9之间的数字:1表示最佳速度,9表示最佳压缩,0表示完全没有压缩。默认值为6。当optimize
选项为TRUE
的时候 compress_level
无效(无论传递的值如何,它都设置为9)。 -
icc_profile
要包含在已保存文件中的ICC配置文件。 -
exif
要包含在已保存文件中的exif数据。
6.0.0 新版功能。
-
bits (experimental)
对于 P 图像,此选项控制要存储的位数。如果省略,则PNG编写器使用8位(256色)。 dictionary (experimental)
设置zlib编码器字典。
要启用PNG支持,您需要在构建Python图像库之前构建和安装zlib压缩库。有关详细信息,请参阅 安装文档。
以上内容是否对您有帮助:
更多建议: