JpegPresets
模块¶
与 Photoshop 设置等效的 JPEG 质量设置。保存 JPEG 文件时可以使用。
默认情况下,以下预设可用:web_low
、web_medium
、web_high
、web_very_high
、web_maximum
、low
、medium
、high
、maximum
。如果需要,可以将更多预设添加到 presets
字典中。
要应用预设,请指定
quality="preset_name"
要仅应用量化表
qtables="preset_name"
要仅应用子采样设置
subsampling="preset_name"
示例
im.save("image_name.jpg", quality="web_high")
子采样¶
子采样是在对图像进行编码时,对色度信息实现比亮度信息更低分辨率的做法。(参考:https://en.wikipedia.org/wiki/Chroma_subsampling)
可能的子采样值是 0、1 和 2,分别对应于 4:4:4、4:2:2 和 4:2:0。
可以使用 JpegImagePlugin.get_sampling()
函数获取 JPEG 的子采样。
在 JPEG 压缩数据中,使用 JPEG 标记而不是 EXIF 标签。(参考:https://exiv2.org/tags.html)
量化表¶
它们是由 DCT (离散余弦变换) 使用的值,用于从图像中去除不必要的信息(压缩的无损部分)。(参考:https://en.wikipedia.org/wiki/Quantization_matrix#Quantization_matrices,https://en.wikipedia.org/wiki/JPEG#Quantization)
可以使用以下方法获取 JPEG 的量化表
im.quantization
这将返回一个包含多个列表的字典。保存 JPEG 时,可以将此字典直接作为 qtables 参数传递。
预设中的量化表格式是带有子列表的列表。这些格式是可互换的。
Libjpeg 参考:https://web.archive.org/web/20120328125543/http://www.jpegcameras.com/libjpeg/libjpeg-3.html