Python 保存枕头图像时如何正确设置DPI?
我试图使用Python编程创建图像,但是图像中文本的图像质量有问题 我想将生成的图像保存为PNG,因此我在保存时根据设置DPI,但无论是使用DPI=(72,72)还是DPI=(600600)保存,在视觉上看起来都是一样的 我的代码如下所示:Python 保存枕头图像时如何正确设置DPI?,python,image,python-imaging-library,dpi,pillow,Python,Image,Python Imaging Library,Dpi,Pillow,我试图使用Python编程创建图像,但是图像中文本的图像质量有问题 我想将生成的图像保存为PNG,因此我在保存时根据设置DPI,但无论是使用DPI=(72,72)还是DPI=(600600)保存,在视觉上看起来都是一样的 我的代码如下所示: from PIL import Image, ImageDraw, ImageFont def generate_empty_canvas(width, height, color='white'): size = (width, height)
from PIL import Image, ImageDraw, ImageFont
def generate_empty_canvas(width, height, color='white'):
size = (width, height)
return Image.new('RGB', size, color=color)
def draw_text(text, canvas):
font = ImageFont.truetype('Verdana.ttf', 10)
draw = ImageDraw.Draw(canvas)
if '\n' not in text:
draw.text((0, 0), text, font=font, fill='black')
else:
draw.multiline_text((0, 0), text, font=font, fill='black')
def create_sample():
text = 'aaaaaaaaaaaaaaaaaa\nbbbbbbbbbbbbbbbbbbbbbbb\nccccccccccccccccccccc'
canvas = generate_empty_canvas(200, 50)
draw_text(text, canvas)
canvas.save('low_quality.png', dpi=(72, 72))
canvas.save('high_quality.png', dpi=(600, 600))
low_quality.png是:
high_quality.png是:
由于图像可见,质量没有改变。
我做错了什么
在何处设置DPI以使图像的DPI真正为600?DPI值只是计算机图像上的元数据。它们给出如何显示或打印图像的提示 使用360 dpi打印360×360图像将产生1×1英寸的打印输出 一种简单的解释方法:DPI设置建议图像的缩放级别 使用其他DPI保存不会更改图像的内容。如果您想要更大的图像,请创建更大的画布并使用更大的字体