teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

参考ソースとその説明を追加

2020/03/19 13:49

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -57,5 +57,34 @@
57
57
 
58
58
  ![イメージ説明](bdb3e2de077808bf66ce236ec226668c.png)
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

2020/03/19 13:49

投稿

teamikl
teamikl

スコア8817

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隅に配置