回答編集履歴
2
参考ソースとその説明を追加
answer
CHANGED
@@ -57,5 +57,34 @@
|
|
57
57
|
|
58
58
|

|
59
59
|
|
60
|
+
----
|
61
|
+
[2020/03/19 22:47] 追記: 参考ソース
|
60
62
|
|
63
|
+
「tkinter crop」 や 「トリミング」で検索して
|
61
|
-
|
64
|
+
良い感じに参考になりそうなコード見つかったので紹介します。
|
65
|
+
https://github.com/Lexing/pyImageCropper/blob/master/crop.py
|
66
|
+
|
67
|
+
- ImageTkを用いてCanvasへ画像を描画
|
68
|
+
- Image.cropを用いた切り取り
|
69
|
+
- マウスでのドラッグ&ドロップの一連のイベント処理
|
70
|
+
- 選択領域のリサイズ
|
71
|
+
|
72
|
+
あたりの参考になると思います。
|
73
|
+
UIの操作は違いますが、目的のものに近いのではないでしょうか。
|
74
|
+
マウスで範囲選択した後に、キーボードの十字キーで微調整できるようです。
|
75
|
+
|
76
|
+
操作は、コマンド引数でJPEG画像が置かれたディレクトリのパスを渡し起動、
|
77
|
+
スペースで切り取り保存し次のファイルへ、`q` で終了。
|
78
|
+
|
79
|
+
8年程前のコードなので、Python2系の環境が必要になりますが
|
80
|
+
1箇所だけ修正して動きました。win10 ActivePython2.7 + PIL で動作確認。
|
81
|
+
`import ImageTk` -> `from PIL import ImageTk`
|
82
|
+
|
83
|
+
画像の種類によっては get_exif_image() でエラーが出るかもしれないので、
|
84
|
+
その場合は追加でもう一箇所修正
|
85
|
+
|
86
|
+
```python
|
87
|
+
# get_image_exif()メソッド内に(適切なインデントで)追加
|
88
|
+
if not hasattr(image, "_getexif"):
|
89
|
+
return
|
90
|
+
```
|
1
typo修正 ButtonRelease -> ButtonRelease-1
answer
CHANGED
@@ -43,7 +43,7 @@
|
|
43
43
|
- Step2: アイコンを配置してマウスで移動可能にする
|
44
44
|
- ドラッグアンドドロップのイベント処理方法について
|
45
45
|
- `<ButtonPress-1>`イベント内で
|
46
|
-
- `<BUttonRelease>` と `<Motion>` を登録
|
46
|
+
- `<BUttonRelease-1>` と `<Motion>` を登録
|
47
47
|
- `<ButtonRelease-1>` でイベントハンドラを解除
|
48
48
|
- `<Motion>`内にマウスカーソル移動中の処理
|
49
49
|
- Step3: アイコンを枠の4隅に配置
|