今天在学习python的QRCODE模块时遇到了个小问题。
# -*- coding: UTF-8 -*-
from PIL import Image
import qrcode
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_Q,
box_size=10,
border=4,
)
qr.add_data('恭喜你!\n中奖了!\n你要做的有三件事:\n1.告诉领导你不干了\n2.垂询16899888查询详情\n3.告诉领导你不敢了\n哈哈')
qr.make(fit=True)
img = qr.make_image()
img = img.convert("RGBA")
icon = Image.open("C:/1.png")
img_w,img_h = img.size
factor = 4
size_w = int(img_w / factor)
size_h = int(img_h / factor)
icon_w,icon_h = icon.size
if icon_w >size_w:
icon_w = size_w
if icon_h > size_h:
icon_h = size_h
icon = icon.resize((icon_w,icon_h),Image.ANTIALIAS)
w = int((img_w - icon_w) / 2)
h = int((img_h - icon_h) / 2)
img.paste(icon, (w, h), icon)
img.save('hah.png')
就是上面的代码,跟别人运行成功的没什么差别,但是运行的时候报了下面这个错:
我上网看说这是python中用PIL合并jpg和png出错。但是明明我用的也是个PNG的呀,所以我在网上又找了个正经的png格式的图片,居然不报错了,才想起来,我的png图片是我自作聪明,直接将一个jpg格式的图片重命名的,根本就不是个png,真的是有点蠢,记录下来,以后不干这事儿了。。。。