FontSepten
@FontSepten
Любитель

Как встроить изображение в программу?

У меня есть программа, написана на python.
Программа использует пару изображений PNG. Не меняет их, а просто выводит.
Что бы изображение выводилось пользователю нужно вместе с программой скачать и изображение.
Можно ли каким-нибудь образом "встроить" изображение в код программы? Дабы она могла выводится в виде изображения в окне tkinter, не скачивая изображение отдельно. И каким образом его выводить?
P.s. просто встроить ссылку на изображение в облаке не вариант.
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
NeiroNx
@NeiroNx
Программист
Base64, помните что Base64 это не метод сжатия - код существенно увеличится не пропорционально объему изображения:
import tkinter as tk

IMAGE_DATA = '''
    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
    RU5ErkJggg==
    '''

root = tk.Tk()
image = tk.PhotoImage(data=IMAGE_DATA)
label = tk.Label(root, image=image, padx=100, pady=100)
label.pack()

root.mainloop()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы