本页列出了不推荐使用的Pillow功能,或在过去的主要版本中删除的Pillow功能,并给出了替代使用的选项。
不推荐使用的功能
以下是被视为已弃用的功能。在适当的情况下,a DeprecationWarning 发行。
FreeType 2.7
8.1.0 版后已移除.
对FreeType 2.7的支持已弃用,将在Pillow 9.0.0(2022-01-02)中删除,而FreeType 2.8将是最低支持。
我们建议至少升级到FreeType 2.10.4 ,修复了FreeType2.6中引入的一个严重漏洞 (CVE-2020-15999 )。
图像.show命令参数
7.2.0 版后已移除.
这个 command 参数将在枕头9.0.0(2022-01-02)中删除。使用的子类 ImageShow.Viewer 取而代之的是。
Image._showxv
7.2.0 版后已移除.
Image._showxv 将在枕头9.0.0(2022-01-02)中删除。使用 Image.Image.show() 取而代之的是。如果需要自定义行为,请使用 ImageShow.register() 要添加自定义,请执行以下操作 ImageShow.Viewer 班级。
ImageFile.raise_ioerror
7.2.0 版后已移除.
IOError 被合并到 OSError 在Python3.3中。所以, ImageFile.raise_ioerror 将在枕头9.0.0(2022-01-02)中删除。使用 ImageFile.raise_oserror 取而代之的是。
Pillow版本常数
5.2.0 版后已移除.
PILLOW_VERSION 将在枕头9.0.0(2022-01-02)中删除。使用 __version__ 取而代之的是。
7.0.0版本的Pillow在最初的时候被升级到了7.0.0,但后来又被升级到了7.0。
Tk/Tcl 8.4
8.2.0 版后已移除.
对Tk/Tcl 8.4的支持已弃用,将在Pillow 10.0.0(2023-01-02)中删除,届时Tk/Tcl 8.5将是最低支持。
类别
8.2.0 版后已移除.
im.category 已弃用,将在Pillow 10.0.0(2023-01-02)中删除,以及相关的 Image.NORMAL , Image.SEQUENCE 和 Image.CONTAINER 属性。
为了确定图像是否具有多个帧, getattr(im, "is_animated", False) 可以改为使用。
JpegImagePlugin.convert_dict_qtables
8.3.0 版后已移除.
JPEG quantization 现在自动转换,但仍作为字典返回。这个 convert_dict_qtables 方法不再对提供给它的数据执行任何操作,已被弃用,将在Pillow 10.0.0(2023-01-02)中删除。
ImagePalette大小参数
8.4.0 版后已移除.
这个 size 参数将在枕头10.0.0(2023-01-02)中删除。
在Pillow 8.3.0之前, ImagePalette 默认情况下需要特定长度的调色板数据,可以使用size参数覆盖该数据。Pillow 8.3.0删除了默认的所需长度,也消除了对Size参数的需要。
删除的功能
不推荐使用的功能只有在经过适当的不推荐期之后才能在主要版本中删除。
im.offset
1.1.2 版后已移除.
Removed in version 8.0.0.
im.offset() 已被删除,呼叫 ImageChops.offset() 相反。
在PIL 1.1.2中记录为已弃用,引发了 DeprecationWarning 从1.1.5开始 Exception 因为枕头3.0.0和 NotImplementedError 从3.3.0开始。
图像.fromstring, 来自字符串的im以及im.tostring公司
2.0.0 版后已移除.
Removed in version 8.0.0.
Image.fromstring()已被删除,呼叫Image.frombytes()相反。im.fromstring()已被删除,呼叫frombytes()相反。im.tostring()已被删除,呼叫tobytes()相反。
他们发出了 DeprecationWarning 从2.0.0开始 Exception 自3.0.0和 NotImplementedError 从3.3.0开始。
imagecms.cmsprofile属性
3.2.0 版后已移除.
Removed in version 8.0.0.
中的一些属性 PIL.ImageCms.CmsProfile 已被删除。从6.0.0开始,他们发布了一个 DeprecationWarning :
远离的 |
代替使用 |
|---|---|
|
加垫的 |
|
加垫的 |
|
统一码 |
|
|
|
|
|
统一码 |
|
统一码 |
Python 2.7
6.0.0 版后已移除.
Removed in version 7.0.0.
Python2.7在2020年1月1日达到了生命的尽头。Pillow6.x是支持Python2的最后一个系列。
Image.__del__
6.1.0 版后已移除.
Removed in version 7.0.0.
在中隐式关闭图像的基础文件 Image.__del__ 已删除。使用上下文管理器或调用 Image.close() 而是以确定的方式关闭文件。
以前的方法:
im = Image.open("hopper.png")
im.save("out.jpg")改为使用:
with Image.open("hopper.png") as im:
im.save("out.jpg")pil.*imageplugin.u版本属性
6.0.0 版后已移除.
Removed in version 7.0.0.
单个插件的版本常量已被删除。使用 PIL.__version__ 相反。
远离的 |
远离的 |
远离的 |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pyqt4和Pyside
6.0.0 版后已移除.
Removed in version 7.0.0.
qt 4在2015-12-19达到了寿命终止。它的python绑定也是eol:pyqt4(自2018-08-31)和pyside(自2015-10-14)。
PyQt4和PySide的支持已从 ImageQt . 请升级到PyQt5或PySide2。
设置TIFF图像的大小
5.3.0 版后已移除.
Removed in version 7.0.0.
直接设置TIFF图像的大小(例如。 im.size = (256, 256) )抛出错误。使用 Image.resize 相反。
版本常量
5.2.0 版后已移除.
Removed in version 6.0.0.
VERSION (旧PIL版本,始终为1.1.7)已删除。使用 __version__ 相反。
未记录的ImageOps函数
4.3.0 版后已移除.
Removed in version 6.0.0.
在 ImageOps 已被删除。使用等价物 ImageFilter 而是:
远离的 |
代替使用 |
|---|---|
|
|
|
|
|
|
|
|
|
|
PIL.OleFileIO
4.0.0 版后已移除.
Removed in version 6.0.0.
在Pillow 4.0.0(2017-01)中,PIL.OleFileIO作为供应商文件被删除,取而代之的是上游olefile Python包,取而代之的是 ImportError 5.0.0(2018-01年度)。不推荐使用的文件现在已从枕头中删除。如果需要,请从PyPI安装(例如 python3 -m pip install olefile )。
讨论区