5.3.0#
API更改#
图像尺寸#
如果您试图直接设置图像的大小,例如 im.size = (100, 100) ,您现在将收到 AttributeError . 这不是要删除现有的功能,而是要引发一个明确的错误以防止以后的结果。这个 resize 方法是更改图像大小的正确方法。
例外情况如下:
ICO和ICN图像格式,使用
im.size = (100, 100)选择子图像。TIFF图像格式,现在有一个
DeprecationWarning对于此操作,由于以前需要直接图像大小设置来解决平铺范围的问题。
API添加#
向基于矩形和椭圆的形状添加了线条宽度参数#
可选行 width 参数已添加到 ImageDraw.Draw.arc , chord , ellipse , pieslice 和 rectangle .
直线序列的曲线接头#
ImageDraw.Draw.line 在点之间绘制一条或多条线。以前,当给出多个点时,对于较大的 width 这些线条之间的接缝看起来很难看。现在有一个附加的可选参数, joint ,默认为 None . 当设置为 curved ,线条之间的关节将变圆。
ImageOps.colorize#
以前 ImageOps.colorize 仅支持双色映射 black 和 white 参数分别映射到0和255。现在它支持三种颜色映射,可选 mid 参数和所有三个颜色参数的位置都可以随意指定( blackpoint , whitepoint 和 midpoint )。例如,对于所有可选参数:
ImageOps.colorize(im, black=(32, 37, 79), white='white', mid=(59, 101, 175),
blackpoint=15, whitepoint=240, midpoint=100)
ImageOps.pad#
同时 ImageOps.fit 允许用户将图像裁剪到要求的纵横比和大小,新方法 ImageOps.pad 填充图像以填充所需的纵横比和大小,用提供的填充新空间 color 并通过一个 centering 参数。
其他变化#
增加了通过libtiff读取平铺的tiff图像的支持。压缩后的TIFF图像现在可以通过libtiff读取。
rgb webp图像现在被读取为rgb模式,而不是rgbx。