PIL Draw.text и более низкое разрешение - PullRequest
1 голос
/ 23 декабря 2011

У меня есть следующий код PIL для печати текста на изображении

import os, sys
import PIL
from PIL import ImageFont
from PIL import Image
from PIL import ImageDraw

img = Image.open("one.jpg")
draw = ImageDraw.Draw(img)    
font = ImageFont.truetype("/usr/share/fonts/truetype/msttcorefonts/Times_New_Roman.ttf",27)
draw.text((100, 100), "test test test", font=font)    
img.save("out.jpg")

Это работает с файлом one.jpg. Однако в другом тестовом файле с именем two.jpg он ничего не печатает. Из того, что я вижу, единственное различие между двумя документами - это более низкое разрешение на two.jpg. Файл one.jpg имеет разрешение 200x200 точек на дюйм, файл two.jpg имеет разрешение 60x60 точек на дюйм.

Как мне заставить draw.text работать в более низком разрешении?

Спасибо

1 Ответ

2 голосов
/ 23 декабря 2011

Вам необходимо указать цвет текста:

import os
import sys
import ImageFont
import Image
import ImageDraw

img = Image.open("two.jpg")
draw = ImageDraw.Draw(img)    
font = ImageFont.truetype("/usr/share/fonts/truetype/msttcorefonts/Times_New_Roman.ttf",27)
draw.text((100, 100), "test test test", font=font, fill = 'blue')    
img.save("out.jpg")
...