Я пытаюсь создать изображения программно на Python, используя Pillow library, но у меня возникают проблемы с качеством изображения текста внутри изображения.Как правильно установить DPI при сохранении изображения подушки?
Я хочу, чтобы сохранить изображение я генерировать в формате PNG, поэтому я устанавливаю DPI при сохранении в соответствии с this, но сохранить ли я с точек на дюйм = (72,72) или точек на дюйм = (600600) он визуально выглядит одинаково.
Мой код делает это заключается в следующем:
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?