reimg = Image(filename = 'VIS008.png') # Открываю картинку reimg.save(filename = f_name) # Сохраняю её под новым именем def point_print (x, y): with Image (filename = f_name) as img: draw = Drawing() draw.stroke_color = Color("orange") draw.stroke_width = 11 #draw.point(2346, 204) draw.line((x, y), (int(x+11),int(y+11))) draw.draw(img) img.save (filename = f_name)
Как вынести img.save (filename = f_name) из функции? При попытке поставить в конец программы - ошибка. А сохранять файл после каждого цикла рисования - слишком шикарно. У меня таких циклов порядка 1000. Хорошо бы пройтись до конца, а уж потом сохранять.
Скрипт целиком:
from wand.image import Image from wand.drawing import Drawing from wand.color import Color from wand.display import display #f_name = raw_input('Enter the name of img-file: ') + str('.png') f_name = 'EARTH.png' # Создадим функцию для графического отображения координат на спутниковом снимке reimg = Image(filename = 'VIS008.png') reimg.save(filename = f_name) def point_print (x, y): with Image (filename = f_name) as img: draw = Drawing() draw.stroke_color = Color("orange") draw.stroke_width = 11 #draw.point(2346, 204) draw.line((x, y), (int(x+11),int(y+11))) draw.draw(img) img.save (filename = f_name) #Открываем файл с данными и разбиваем строки file = open('123.txt') ax = file.readlines() for tex in ax: q = tex.split() x = int(q[5]) y = int(q[6]) print x, y point_print (x, y)