LINUX.ORG.RU

1. matplotlib / gtk.gdk.Drawable.cairo_create
2. ???
3. PROFIT!

Sphinx ★★☆☆
()

Лучше в сторону cairo посмотри. Очень удобно и приятно рисовать.

Ковыряться в /usr/share/doc/pycairo-1.4.0/examples , там всё очень наглядно:

import cairo

WIDTH, HEIGHT = 600, 600

def draw_spiral (ctx, width, height):
    wd = .02 * width
    hd = .02 * height

    width -= 2
    height -= 2

    ctx.move_to (width + 1, 1-hd)
    for i in range(9):
    ctx.rel_line_to (0, height - hd * (2 * i - 1))
    ctx.rel_line_to (- (width - wd * (2 *i)), 0)
    ctx.rel_line_to (0, - (height - hd * (2*i)))
    ctx.rel_line_to (width - wd * (2 * i + 1), 0)

    ctx.set_source_rgb (0, 0, 1)
    ctx.stroke()


surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, WIDTH, HEIGHT)
ctx = cairo.Context(surface)

ctx.set_source_rgb (1, 1, 1)
ctx.set_operator (cairo.OPERATOR_SOURCE)
ctx.paint()

draw_spiral (ctx, WIDTH, HEIGHT)

surface.write_to_png('spiral.png')

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

ээххх жаль, что питоновский код с первого раза даже запастить не получится без ошибок идентации :)

Pi ★★★★★
()

А ещё можно обратиться к PIL - фич поменьше, чем у pycairo, зато переносимость получше.

yk4ever
()
Ответ на: комментарий от troorl

> А мне питон говорит, что 'module' object has no attribute 'ImageSurface'

Есть подозрение, что в качестве cairo у вас импортится что-то не то... вы скрипт случаем не cairo.py назвали?

yk4ever
()
Ответ на: комментарий от KRoN73

Большое спасибо, именно то, что нужно!

bloody
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.