Добавление текста на фото: Размытие лиц и номерных знаков на фото. Бесплатное приложение

Содержание

python — Добавление текста в фото при помощи tkinter, pillow

Вопрос задан

Изменён 8 месяцев назад

Просмотрен 166 раз

Всем привет! Хочу реализовать программу, которая будет добавлять в фото текст из поля ввода «Entry» при нажатие кнопки, как показано на картинки. Не могу понять как это реализовать, помогите в решение вопроса

from tkinter import Tk, Canvas
from tkinter.ttk import Frame, Button, Entry
from PIL import Image, ImageTk
root = Tk()
frame = Frame(root)
frame.grid()
image = Image.open("image2.jpg")
photo = ImageTk.PhotoImage(image)
entr = Entry().grid(row= 1, column=1)
btn = Button(frame, text="Кнопка").grid(row=1, column=2)
canvas = Canvas(root, height=600, width=600)
img = canvas. create_image(300, 300, image=photo)
canvas.create_text(?)
canvas.grid(row=2, column=1)
root.mainloop()
 

  • python
  • tkinter
  • pillow

Сначала делаете функцию, которая будет срабатывать при нажатии кнопки. Внутри этой функции пррописываете код для получения текста из виджета Entry и в этой же функции прописываете код для создания текста на канвасе. Затем связываете функцию и кнопку (при создании кнопки прописываете command = function_name)

from tkinter import Tk, Canvas
from tkinter.ttk import Frame, Button, Entry
from PIL import Image, ImageTk
def draw_text(): # функция
    text = entr.get() # получаем текст из entr
    canvas.create_text(300, 300, text=text, fill="white", font='Arial 15 bold')
# 300, 300 - координаты x,y для текста, fill - цвет текста, font - шрифт
root = Tk()
frame = Frame(root)
frame.grid()
image = Image.open("image2.jpg")
photo = ImageTk.PhotoImage(image)
entr = Entry()
entr.grid(row= 1, column=1) # нужно разнести в 2 строки, 
# чтобы можно было использовать get() для получения текста
btn = Button(frame, text="Кнопка", command=draw_text).
grid(row=1, column=2) canvas = Canvas(root, height=600, width=600) img = canvas.create_image(300, 300, image=photo) canvas.grid(row=2, column=1) root.mainloop()
2

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

By clicking “Отправить ответ”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Вопрос — Множественное добавление текста на фотографии

JavaScript отключён. Чтобы полноценно использовать наш сайт, включите JavaScript в своём браузере.