OSError: [Errno 9] Неверный дескриптор файла при сохранении изображения с помощью PIL - PullRequest
0 голосов
/ 28 января 2019

Я забавляю PIL, чтобы написать текст внутри и изображение, а затем сохранить его в том же месте.Ниже приведена моя функция, которая делает это

from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw

def add_text_to_image(image_path):
    img = Image.open(image_path)
    img = img.convert('RGB')
    widht, height = img.size
    draw = ImageDraw.Draw(img)
    font = ImageFont.truetype("helvetica.ttf", 20)
    draw.text((0, 0), "Some text", (0, 0, 0), font=font)
    img.save(image_path)

Но я получаю следующую ошибку.

Traceback (последний вызов был последним): File

"/ usr/local/lib/python3.6/site-packages/background_task/tasks.py",

строка 43, в функции bg_runner (* args, ** kwargs) Файл

"/ home/paksign/app/app/document/tasks.py ", строка 74, в

document_status_changed_to_completed

add_branding_texts_to_document_images (meta) File

" / home / paksign / app /app / document / utils.py ", строка 277, в

add_branding_texts_to_document_images для моментального снимка в снимках: файл

" / home / paksign / app / app / document / utils.py ", строка270, в

add_text_to_image img.save (image_path) Файл

"/ usr / local / lib / python3.6 / site-packages / PIL / Image.py", строка 1994, в

save save_handler (self, fp, filename) Файл

"/ usr / local / lib / python3.6 / site-packages / PIL / JpegImagePlugin.py", строка

761, в _save ImageFile._save (im, fp, [("jpeg", (0, 0) + im.size, 0,

rawmode)], bufsize) Файл

"/ usr / local / lib/python3.6/site-packages/PIL/ImageFile.py ", строка 519,

в _save s = e.encode_to_file (fh, bufsize) OSError: [Errno 9] Bad file

дескриптор Маркировочная задача

document.tasks.document_status_changed_to_completed как сбой

Я пробовал какое-то решение из Интернета, но ничего не работает, и я не знаю, что я делаю здесь неправильно.любая помощь приветствуется

...