У меня есть этот код:
img = Image.new('L', (26, 17), color=255)
fnt = ImageFont.truetype('/assets/david.ttf', 23)
d = ImageDraw.Draw(img)
d.text((0, -1), "hi", font=fnt, fill=100)
img.save('newimg.png')
, и он прекрасно работает.
, но я пытаюсь сделать al oop и в каждой итерации выполнить используйте другой шрифт, если я изменю эту строку:
fnt = ImageFont.truetype('/assets/david.ttf', 23)
с этим:
font_name = 'david.tff'
fnt = ImageFont.truetype('/assets/' + font_name, 23)
(даже не в al oop)
Я получаю эту ошибку :
Traceback (most recent call last):
File ".../create_dataset.py", line 30, in <module>
fnt = ImageFont.truetype('/assets/' + font_name, 23)
File "...\venv\lib\site-packages\PIL\ImageFont.py", line 642, in truetype
return freetype(font)
File "...\venv\lib\site-packages\PIL\ImageFont.py", line 639, in freetype
return FreeTypeFont(font, size, index, encoding, layout_engine)
File "...\venv\lib\site-packages\PIL\ImageFont.py", line 188, in __init__
font, size, index, encoding, layout_engine=layout_engine
OSError: cannot open resource
Почему использование переменной внутри ImageFont.truetype
делает эту ошибку и как ее можно решить?