1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

tkinterにてPillowを使用してText領域にJPEG画像をアップロードする方法を紹介します。
Canvas領域に画像をアップロードする記事は既に投稿されていましたが、Text領域に画像をアップロードする記事は見つからなかったので、Text領域に画像をアップロードする際の参考になれば幸いです。

開発環境

・WSL2/Ubuntu環境
・Python: 3.10.12

Pillowを使用しText領域にJPEG画像をアップロードする方法

Sample_Uploadimagefortext.py
import tkinter as tk
from tkinter import Text, filedialog
from PIL import Image, ImageTk  # type: ignore


# upload image for text area
def Sample_Upload_Imagefile():
    filepath = filedialog.askopenfilename(filetypes=[("Image files", ".jpg")])
    if filepath:
        image_jpeg = Image.open(filepath)
        image_jpeg.thumbnail((400, 400))
        image_for_tkinter = ImageTk.PhotoImage(image_jpeg)
        area_text.image_create(tk.END, image=image_for_tkinter)
        area_text.image = image_for_tkinter


# configure root
root = tk.Tk()
root.title("ColorText")
root.geometry("800x600")

# configure menu
bar_menu = tk.Menu(root)
list_upload = tk.Menu(bar_menu, tearoff=0)
bar_menu.add_cascade(label="Upload", menu=list_upload)
list_upload.add_command(label="Image", command=Sample_Upload_Imagefile)
root.config(menu=bar_menu)

# make text
area_text = Text(root, wrap="word", undo=True)
area_text.pack(fill="both", expand=True)

# display window
root.mainloop()

JPEG画像をText領域にアップロードする流れ

①UploadタブのImageをクリック
②fileを選択するdialogが表示されるので、何らかのJPEGファイル(拡張子が.jpg)を選択
③Text領域に選択したJPEGファイルが出力

参考文献

本記事は以下情報を参考にして執筆しました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?