我想使用Pillow创建一个PNG图片,该图片用于标签打印。 因此,我尝试使用
如何正确计算图像大小,并如何增加保存为PNG(或JPG或JPEG)图像的分辨率?
以下是迄今为止的代码:
PIL
创建一个新的图片,添加一些文本,一个多边形和一个QR码。 但是,我发现很难获得适当的图像大小(与标签大小相关,即7.5厘米x 5.5厘米)。 我只通过不断尝试才得到了大概的大小(大约为(275,204)
)。 在保存时,PNG的分辨率很低,因此打印效果也很差。如何正确计算图像大小,并如何增加保存为PNG(或JPG或JPEG)图像的分辨率?
以下是迄今为止的代码:
import qrcode
from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw
# Create qr code instance
qr = qrcode.QRCode(
version = 1,
error_correction = qrcode.constants.ERROR_CORRECT_H,
box_size = 4,
border = .2,
)
text = "test"
# Create new image
img = Image.new('RGB', (275, 204), color = (220,220,220))
# Add data
qr.add_data(text)
qr.make(fit=True)
# Create an image from the QR Code instance
qrc = qr.make_image(fill_color='black', back_color='white')
draw = ImageDraw.Draw(img)
font1 = ImageFont.truetype("arial.ttf", 25)
font2 = ImageFont.truetype("arial.ttf", 60)
draw.text((65, 150),text,(0,0,0),font=font1)
draw.text((115, 120),text,(0,0,0),font=font2)
draw.polygon(((5, 20), (50, 34), (50, 6)), fill=0)
img.paste(qrc, (80,25))
img.show()
#img.save("image.png", dpi = (300,300))