python - 无法在 Pillow 中粘贴调整大小的图像
问题描述
我在 Pillow 模块中粘贴调整大小的图像时遇到问题。我想将水印调整到具有图像宽度的 1/3 宽度的任何大小的所有图像并保持比例纵横比 65:10,粘贴调整大小的图像后出现此错误:
(480, 360)
(160, 25)
Traceback (most recent call last):
File "C:/Users/Przemek/PycharmProjects/cwiczenia/venv/project watermark.py", line 15, in <module>
image.paste(watermarkResized, (0,0))
File "C:\Users\Przemek\PycharmProjects\cwiczenia\venv\lib\site-packages\PIL\Image.py", line 1504, in paste
raise ValueError("cannot determine region size; use 4-item box")
ValueError: cannot determine region size; use 4-item box
这是代码:
import os
from PIL import Image
directory = "PATH TO THE DIRECTORY"
watermark = Image.open("PATH TO THE WATERMARK")
for filename in os.listdir(directory):
image = Image.open("PATH TO THE DIRECTORY"+filename)
imageWidth, imageHeight = (image.size)
watermarkResized = watermark.resize(((int(round((imageWidth/3),0)), int(round(((imageWidth/3) /6.5),0))))).copy
print(image.size)
print(watermarkResized.size)
image.paste(watermarkResized, (0,0))
image.save("PATH TO THE DIRECTORY"+filename+".png")
解决方案
我通过简单地从图像对象中删除 .copy 函数来解决了这个问题。我现在有另一个问题。如何将具有透明背景的 .png 图像粘贴到图像中?
推荐阅读
- sql - SQL Casting 无效数据类型
- sap - 在 Web Intelligence 中准确计算两个时间戳之间的营业时间
- javascript - Push 不是函数,Redux
- ios - iOS Material Components MDCButton在按下按钮时更改文本颜色
- css - 用 phpunit 断言 span 类
- angular - 如何模拟ActivatedRouteSnapshot?
- javascript - 我无法使用 readPreference 选项连接到 mongodb
- kubernetes - Google Kubernetes:工作池没有缩减到零
- python - 删除第二个数据帧间隔中的数据帧时间戳
- c++ - C++ 中的停用词