質問編集履歴
2
追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -259,3 +259,91 @@
|
|
259
259
|
win.mainloop()
|
260
260
|
|
261
261
|
```
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
**追記(subsample()による縮小、scaleが0以下だと拡大が意図した動作とは違う動作になる)**
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
```
|
270
|
+
|
271
|
+
def zoom_up(self, e, app):
|
272
|
+
|
273
|
+
if self.img_disp_flag == True:
|
274
|
+
|
275
|
+
self.canvas.delete(self.disp_image)
|
276
|
+
|
277
|
+
self.scale -= 1
|
278
|
+
|
279
|
+
self.img_zoom_up = self.img.subsample(self.scale, self.scale)
|
280
|
+
|
281
|
+
#self.img_zoom_up = self.img.zoom(x=self.scale, y=self.scale)
|
282
|
+
|
283
|
+
self.disp_image = self.canvas.create_image(0, 0, image=self.img_zoom_up, anchor=tk.NW)
|
284
|
+
|
285
|
+
self.img_x_zoom_up = self.img_zoom_up.width()
|
286
|
+
|
287
|
+
self.img_y_zoom_up = self.img_zoom_up.height()
|
288
|
+
|
289
|
+
print("size:", self.img_x_zoom_up, self.img_y_zoom_up)
|
290
|
+
|
291
|
+
print("scale:", self.scale)
|
292
|
+
|
293
|
+
else:
|
294
|
+
|
295
|
+
print("Not displaying an image yet!")
|
296
|
+
|
297
|
+
|
298
|
+
|
299
|
+
|
300
|
+
|
301
|
+
def zoom_down(self, e, app):
|
302
|
+
|
303
|
+
if self.img_disp_flag == True:
|
304
|
+
|
305
|
+
self.canvas.delete(self.disp_image)
|
306
|
+
|
307
|
+
self.scale += 1
|
308
|
+
|
309
|
+
self.img_zoom_down = self.img.subsample(self.scale, self.scale)
|
310
|
+
|
311
|
+
self.disp_image = self.canvas.create_image(0, 0, image=self.img_zoom_down, anchor=tk.NW)
|
312
|
+
|
313
|
+
self.img_x_zoom_down = self.img_zoom_down.width()
|
314
|
+
|
315
|
+
self.img_y_zoom_down = self.img_zoom_down.height()
|
316
|
+
|
317
|
+
print("size:", self.img_x_zoom_down, self.img_y_zoom_down)
|
318
|
+
|
319
|
+
print("scale:", self.scale)
|
320
|
+
|
321
|
+
else:
|
322
|
+
|
323
|
+
print("Not displaying an image yet!")
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
def zoom_default(self, e, app):
|
330
|
+
|
331
|
+
if self.img_disp_flag == True:
|
332
|
+
|
333
|
+
self.canvas.delete(self.disp_image)
|
334
|
+
|
335
|
+
self.scale = 1
|
336
|
+
|
337
|
+
self.img_zoom_default = self.img.subsample(self.scale, self.scale)
|
338
|
+
|
339
|
+
self.disp_image = self.canvas.create_image(0, 0, image=self.img_zoom_default, anchor=tk.NW)
|
340
|
+
|
341
|
+
print("size:", self.img_x, self.img_y)
|
342
|
+
|
343
|
+
print("scale:", self.scale)
|
344
|
+
|
345
|
+
else:
|
346
|
+
|
347
|
+
print("Not displaying an image yet!")
|
348
|
+
|
349
|
+
```
|
1
追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -122,7 +122,7 @@
|
|
122
122
|
|
123
123
|
|
124
124
|
|
125
|
-
|
125
|
+
# バインド
|
126
126
|
|
127
127
|
def bind_event(self):
|
128
128
|
|
@@ -140,7 +140,7 @@
|
|
140
140
|
|
141
141
|
|
142
142
|
|
143
|
-
|
143
|
+
# 画像上でマウスホイールを動かしたとき
|
144
144
|
|
145
145
|
def wheel_rotated(self, e, app):
|
146
146
|
|
@@ -152,7 +152,7 @@
|
|
152
152
|
|
153
153
|
|
154
154
|
|
155
|
-
|
155
|
+
# 画像の拡大
|
156
156
|
|
157
157
|
def zoom_up(self, e, app):
|
158
158
|
|
@@ -164,7 +164,7 @@
|
|
164
164
|
|
165
165
|
|
166
166
|
|
167
|
-
|
167
|
+
# 画像の縮小
|
168
168
|
|
169
169
|
def zoom_down(self, e, app):
|
170
170
|
|
@@ -176,7 +176,7 @@
|
|
176
176
|
|
177
177
|
|
178
178
|
|
179
|
-
|
179
|
+
# 倍率をデフォルトに戻す
|
180
180
|
|
181
181
|
def zoom_default(self, e, app):
|
182
182
|
|
@@ -206,7 +206,7 @@
|
|
206
206
|
|
207
207
|
|
208
208
|
|
209
|
-
|
209
|
+
# 画像の表示
|
210
210
|
|
211
211
|
def img_disp(self, e, app):
|
212
212
|
|
@@ -228,7 +228,7 @@
|
|
228
228
|
|
229
229
|
|
230
230
|
|
231
|
-
|
231
|
+
# 画像の非表示
|
232
232
|
|
233
233
|
def img_hide(self, e, app):
|
234
234
|
|