本页列出了不推荐使用的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
)。
讨论区