请稍候,加载中....

8.0.0

8.0.0

向后不兼容的更改

Python 3.5

Pillow已经放弃了对Python3.5的支持,Python3.5在2020-09-13停止使用。

PyPy 7.1.x

Pillow已经放弃了对PyPy3 7.1.1的支持。Py3 7.2.0于2019-10-14发布,现在是最低兼容版本。

im.offset

im.offset() 已被删除,呼叫 ImageChops.offset() 相反。

图像.fromstring, 来自字符串的im以及im.tostring公司

  • Image.fromstring() 已被删除,呼叫 Image.frombytes() 相反。

  • im.fromstring() 已被删除,呼叫 frombytes() 相反。

  • im.tostring() 已被删除,呼叫 tobytes() 相反。

imagecms.cmsprofile属性

中的一些属性 PIL.ImageCms.CmsProfile 已删除:

远离的

代替使用

color_space

加垫的 xcolor_space

pcs

加垫的 connection_space

product_copyright

统一码 copyright

product_desc

统一码 profile_description

product_description

统一码 profile_description

product_manufacturer

统一码 manufacturer

product_model

统一码 model

API更改

ImageDraw.text:笔划_宽度

修复了通过以下位置时出现的问题 stroke_width 具有非零值的 ImageDraw.text() 会导致文本偏移该数量。

ImageDraw.text:锚点

这个 anchor 的参数 ImageDraw.text() 已经实施了。

使用此参数可以更改文本相对于指定的 xy 重点。看见 文本锚点 有关详细信息,请参阅。

向PsdImagePlugin添加MIME类型

“图像/vnd.adobe.photoshop“现在注册为 PsdImagePlugin.PsdImageFile MIME类型。

API添加

图像.打开:添加格式参数

增加了一个新的 formats 参数到 Image.open()

  • 尝试加载文件的格式列表或元组。这可用于限制选中的格式集。经过 None 若要尝试所有支持的格式,请执行以下操作。您可以通过运行以下命令打印可用格式集 python3 -m PIL 或使用 PIL.features.pilinfo() 功能。

图像操作自动对比:添加掩码参数

ImageOps.autocontrast() 现在可以采取 mask 参数:

  • 对比度操作中使用的直方图是使用遮罩内的像素计算的。如果没有给定遮罩,整个图像将用于直方图计算。

图像操作自动对比截止线

以前, cutoff 参数 ImageOps.autocontrast() 只能是一个数字,用作从直方图的低端和高端截断的百分比。

现在,它也可以是元组 (low, high) .

ImageDraw.regular_polygon

一种新方法 ImageDraw.regular_polygon() ,绘制的正多边形 n_sides ,刻在 bounding_circle .

例如 draw.regular_polygon(((100, 100), 50), 5) 以该点为中心绘制五角大楼 (100, 100) 多边形半径为 50 .

ImageDraw.text:Embedded_COLOR

这些方法 ImageDraw.text()ImageDraw.multiline_text() 现在支持嵌入颜色数据的字体。

要使用嵌入的颜色数据呈现文本,请使用参数 embedded_color=True

支持CBDT字体需要使用libpng编译的FreeType2.5。支持SBIX字体需要使用libpng编译的FreeType 2.5.1。支持COLR字体需要FreeType 2.10。尚不支持SVG字体。

ImageDraw.textlength

两种新方法 ImageDraw.textlength()FreeTypeFont.getlength() 被添加,以1/64像素精度返回文本的精确前进长度。

它们可用于文字换行或分部分呈现文本。

ImageDraw.textbbox

三种新方法 ImageDraw.textbbox()ImageDraw.multiline_textbbox() ,以及 FreeTypeFont.getbbox() 返回呈现文本的边框。

这些函数接受 anchor 参数,请参见 文本锚点 有关详细信息,请参阅。

其他变化

一种改进的椭圆绘制算法

椭圆绘制算法已从绘制360边多边形更改为类似于Bresenham的圆绘制算法。它应该更快,并产生更平滑的曲线,特别是对于较小的椭圆。

ImageDraw.Text和ImageDraw.Multiline_Text

修复了方法中的多个问题 ImageDraw.text()ImageDraw.multiline_text() 有时会导致意外的文本对齐问题。

这个 align 的参数 ImageDraw.multiline_text() 现在在某些情况下会提供更好的结果。

现在支持嵌入位图的TrueType字体。

添加子IFD的写入

保存EXIF数据时,Pillow现在可以写入子IFD,例如GPS IFD。当使用打开图像时使用的EXIF数据保存图像时,这应该会自动发生,例如在 exif_transpose()

以前,子IFD的第一个标记的代码被错误地写入偏移量。

大型BMP文件出错

以前,如果BMP文件太大,则会引发 OSError 会被举起。现在, DecompressionBombError 取而代之的是Pillow,因为Pillow已经用于其他格式。

文档的黑色主题

如果用户要求系统使用深色主题,则https://pillow.readthedocs.io文档将使用深色主题。使用 prefers-color-scheme CSS媒体查询。


Python学习手册-