ImageFile
模块¶
ImageFile
模块为图像打开和保存功能提供支持函数。
此外,它还提供了一个 Parser
类,可用于逐段解码图像(例如,在通过网络连接接收图像时)。此类实现了与标准 sgmllib 和 xmllib 模块相同的使用者接口。
示例:解析图像¶
from PIL import ImageFile
fp = open("hopper.pgm", "rb")
p = ImageFile.Parser()
while 1:
s = fp.read(1024)
if not s:
break
p.feed(s)
im = p.close()
im.save("copy.jpg")
类¶
- class PIL.ImageFile._Tile[source]¶
基类:
NamedTuple
_Tile(codec_name, extents, offset, args)
- class PIL.ImageFile.PyDecoder[source]¶
Bases:
PyCodec
格式解码器的 Python 实现。重写此类并在
decode()
方法中添加解码逻辑。- decode(buffer: bytes | SupportsArrayInterface) tuple[int, int] [source]¶
重写以执行解码过程。
- 参数:
buffer – 包含要解码的数据的字节对象。
- 返回值:
一个
(bytes consumed, errcode)
元组。如果解码完成,则返回 -1 表示已消耗的字节。错误代码来自ImageFile.ERRORS
。
- class PIL.ImageFile.PyEncoder[source]¶
Bases:
PyCodec
格式编码器的 Python 实现。重写此类并在
encode()
方法中添加解码逻辑。- encode(bufsize: int) tuple[int, int, bytes] [source]¶
重写以执行编码过程。
- 参数:
bufsize – 缓冲区大小。
- 返回值:
一个
(bytes encoded, errcode, bytes)
元组。如果编码完成,则返回 1 表示错误代码。错误代码来自ImageFile.ERRORS
。
常量¶
- PIL.ImageFile.LOAD_TRUNCATED_IMAGES = False¶
是否加载截断的图像文件。用户代码可以更改此设置。
- PIL.ImageFile.ERRORS¶
从
PyDecoder.decode()
,PyEncoder.encode()
PyEncoder.encode_to_pyfd()
和PyEncoder.encode_to_file()
返回的已知错误代码字典。