画像処理の全て(完)

前回世界一簡単な写真帖アプリを載せましたが、関連する小技のcodeを載せておきます。

忘れた時にここに戻ってきます。

以前コピペで不都合が起きましたが、WordPressの一部にPHPで修正追加をしましたので、
多分errorは発生しないと思います。

また各処理codeの部分だけで動作するように、必要ライブラリーを追加してあります。

 

 

#画像処理の全て(GUI不使用).py  6/4/2021
# 画像表示はMSフォトを使用
"""
import os
from pathlib import Path
from PIL import Image, ImageTk
import tkinter as tk
import random
import time
from tkinter import filedialog
"""

"""
#①自分の居る場所(path)を知る 
import os
cwd = os.getcwd()
print("①", cwd) #何故かここ(①)をコメント化するとエラー(赤線)となる
"""
#① \Users\tak11\デスクトップ\Python基本code\tak写真帳テンプレート" #コメント化必要???
"""
"""

"""
#②画像サイズを調べる 
import os
size = os.path.getsize("./photo/螺旋階段.jpg")
print("②", size)  #②326545
"""

"""
#③④⑤画像の縦横のサイズを調べる 
import os
from PIL import Image, ImageTk
img = Image.open("./photo/螺旋階段.jpg")  # original size = #685x1024
print("③", img.size)  # 682x1024
print("④", img.width) # 682
print("⑤", img.height)  # 1024
"""

"""
#⑥画像を縮小する 
from PIL import Image, ImageTk
img = Image.open("./photo/螺旋階段.jpg")  # ②326545
img_resize = img.resize((100, 150))
#img_resize.show()
print("⑥", img.size)  # 682x1024 元のサイズ
print("⑥", img_resize.size) # (100x150)
"""

"""
#⑦ ホルダーphotoに入っている画像file名をリストで取り出す 
import os
fnames = os.listdir('photo')
print("⑦", fnames)  #⑦ ['Aegie.jpg', '五重塔.jpg', '土龍.jpg', '塀の内.jpg', '希望.jpg', '忍車.jpg', '日本遺産大山.jpg', '螺旋階段.jpg']
"""

"""
#⑧ホルダーの画像を纏めて同じサイズに縮小・表示する 
import os
from PIL import Image, ImageTk

fnames = os.listdir('photo')
for fname in fnames:
    img = Image.open(os.path.join('photo', fname))
    img.show()
    print(fname)
"""

"""
#⑨縮小画像用のholderを作る. pyと同じpathに出来る 
import os
os.makedirs("photo_shrinked2")
"""


#⑩ ホルダーphotoの全画像を、200KB以上なら縮小・保存・表示 
import os
from PIL import Image, ImageTk

fnames = os.listdir('photo')
for fname in fnames:
    if os.path.getsize(os.path.join('photo', fname)) >= 200000:
        img = Image.open(os.path.join('photo', fname))
        img.thumbnail((500, 400))
        img.save(os.path.join('photo_shrinked1', fname))
    img.show()
    print("⑩", fname)
 
  

 

GUI使用の実用的なアプリはここに上げました。

 

 

Python別館
文字列の配置

ラベル、テキストボックスなどで、文字列の配置が微妙に異なります。いつも迷うので基本的なものを挙げてお …

Python別館
Python別館 目次

Pythonで作成したアプリ関連の記事は「Python別館」に、widgetやその使用方法・それを使 …

Python別館
csvファイルの呼び込み

普段は文字列にコンマ(,)が入ったtxtファイルでのアプリが多いのですが、今回はコンマ区切りのcsv …