Python + Cairo: как сохранить рисунок?

Предположим, я создаю пустую область в окне и рисую в ней несколько линий, как я могу сохранить это в формате .png или .jpg? Или, может быть, преобразовать его в объект, понятный PIL?


person pnodbnda    schedule 23.12.2010    source источник


Ответы (1)


Ответ здесь: Использование Pycairo для динамического создания изображений и их обслуживания в Django, хотя он говорит только, как сохранить в .png.

surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, 100, 100)
context = cairo.Context(surface)
# Draw something ...

surface.write_to_png('filename')
person pnodbnda    schedule 23.12.2010
comment
Из информации в исходном вопросе, на который ссылается ваша ссылка, похоже, что вы можете использовать вызов surface.get_data() в сочетании с вызовом PIL Image.frombuffer() для создания изображения PIL, которое затем можно сохранить в других форматах, таких как jpg. - person martineau; 23.12.2010