Могу ли я попросить пользователя ввести номер и вставить изображение соответствующего номера в пустое изображение? - PullRequest
1 голос
/ 02 мая 2019

Я хотел бы присвоить изображению буквы или цифры, например, буква: «А» - это изображение с буквой А, цифра «0» - это изображение с буквой 0 и т. Д. И я хотел бы спроситьс вводом числа, например 0 и python свяжет это число с нужным изображением (изображение с 0) и вставит это изображение в пустое изображение.

Я уже знаю, как объединить (или объединить) изображение с другим, я использую подушку:

from PIL import Image

background_img = Image.open("blanc.png")   # the blanc image
IM0 = Image.open("0.jpg")   # The image with a 0
area2 = (0, 208)  # Where the 0 will go on the blanc image
background_img.paste(IM0, area2)   # Paste the 0
background_img.save("Final.png")   # Save the final image

И я знаю, как спросить что-то с входом

number = input("what number do you want ?")

Но я не знаю, как назначить (или ссылку) число, которое я напишу во входе, в конкретное изображение ..

Может кто-нибудь помочь мне, пожалуйста?

1 Ответ

1 голос
/ 02 мая 2019

Судя по внешнему виду вашего кода, все, чего не хватает, это имя изображения. Например, если пользователь ввел значение «1», вам необходимо найти изображение с именем «1.jpg».

Если это так, вы можете легко сделать это с помощью следующего:

file_name_fmt = "{v}.jpg"
val = input()
file_name = file_name_fmt.format(v=val)
if file_name in list_of_images:
    img = Image.open(file_name)

EDIT

from PIL import Image

file_name_fmt = "{v}.jpg"

area2 = (0, 208)  # Where the 0 will go on the blanc image
background_img = Image.open("blanc.png")   # the blanc image

val = input("Enter a character for an image representation: ")
file_name = file_name_fmt.format(v=val)
if file_name in list_of_images:
    img = Image.open(file_name)
else:
    raise FileNotFoundError("The file specified doesn't exist")

background_img.paste(img, area2)   # Paste the 0
background_img.save("Final.png")   # Save the final image
...