On this page
39.12. jpeg —读写 JPEG 文件
自 2.6 版起弃用:jpeg模块已在 Python 3 中删除。
模块jpeg提供对由独立 JPEG 组(IJG)编写的 jpeg 压缩器和解压缩器的访问。 JPEG 是压缩图片的标准。它在 ISO 10918 中定义。有关 JPEG 或 Independent JPEG Group 软件的详细信息,请参考 JPEG 标准或软件随附的文档。
Fredrik Lundh 的 Python Imaging Library(PIL)提供了 JPEG 图像文件的便携式接口。有关 PIL 的信息,请访问http://www.pythonware.com/products/pil/。
jpeg模块定义了一个 exception 和一些Function。
exception
jpeg.
error
- compress()和decompress()在发生错误的情况下引发的异常。
jpeg.
compress
(* data , w , h , b *)- 将数据视为宽度* w 和高度 h 的像素图,每个像素 b *个字节。数据按 SGI GLSequences 排列,因此第一个像素位于左下角。这意味着
gl.lrectread()
返回数据可以立即传递到compress()。当前仅允许 1 个字节和 4 个字节的像素,前者被视为灰度,后者被视为 RGB 颜色。 compress()以 JFIF 格式返回包含压缩图片的字符串。
- 将数据视为宽度* w 和高度 h 的像素图,每个像素 b *个字节。数据按 SGI GLSequences 排列,因此第一个像素位于左下角。这意味着
jpeg.
decompress
(* data *)- 数据是包含 JFIF 格式图片的字符串。它返回一个 Tuples
(data, width, height, bytesperpixel)
。同样,数据适合传递给gl.lrectwrite()
。
- 数据是包含 JFIF 格式图片的字符串。它返回一个 Tuples
jpeg.
setoption
(* name , value *)- 设置各种选项。随后的compress()和decompress()调用将使用这些选项。提供以下选项:
Option | Effect |
---|---|
'forcegray' |
即使 Importing 为 RGB,也将强制输出为灰度。 |
'quality' |
将压缩图像的质量设置为0 和100 之间的值(默认值为75 )。这仅影响压缩。 |
'optimize' |
执行霍夫曼表优化。花费更长的时间,但是压缩后的图像更小。这仅影响压缩。 |
'smooth' |
对未压缩的图像执行块间平滑。仅适用于低质量的图像。这仅影响减压。 |
See also
JPEG 静止图像数据压缩标准
JPEG 图像格式的规范参考,作者为 Pennebaker 和 Mitchell。
JPEG 的 ISO 标准也发布为 ITU T.81.可以在线以 PDF 格式获得。