Articles of cairo

Crear la ruta del cairo desde el archivo SVG

Debe haber algo que me esté perdiendo. Estoy en Windows y quiero usar python para tomar las rutas de un archivo SVG, escalarlas en un lugar cada una de ellas en una nueva superficie (o todas en una, eso no importa). Leí sobre el cairo aquí y en stackoverflow y me pareció que se ajustaría […]

Instalando el Cairo en OS X Lion

Cuando bash instalar Cairo en OS X Lion con Python 2.7.2 simplemente no funciona, puedo comstackrlo e instalarlo, pero cuando se trata de importar cairo en python, no se puede encontrar. He probado el Cómo instalar PyCairo 1.10 en Mac OSX con el valor predeterminado y solo produce este error “_cairo_xlib_surface_get_width”, referenced from: _xlib_surface_get_width in […]

rsvg con Python 3.2 en Ubuntu

Estoy tratando de usar rsvg en Python 3.2 pero sigo recibiendo un error de importación. He instalado todos los paquetes de librsvg junto con el cairo. No puedo encontrar nada en línea sobre qué más instalar para que funcione. Escuché que el módulo rsvg no se ha actualizado desde 2005, así que, ¿no es compatible […]

Fallo en la instalación de py2cairo. Comprobando ‘cairo’> = 1.10.0: no encontrado

Estoy tratando de instalar PyCairo (desde la fuente de tarball) en mi OS X 10.5 usando Python 2.7 de 32 bits (de python.org) y cairo 1.10.2 de MacPorts. Así que estoy instalando “py2cairo”. Cuando ejecuto python ./waf configure , obtengo Checking for ‘cairo’ >= 1.10.0 : not found Tengo archivos del cairo aquí … $ […]

¿Cómo renderizo * partes * de un archivo svg?

Quiero representar partes de un archivo svg por nombre, pero por mi vida no puedo averiguar cómo hacerlo (usando python + gtk). Aquí está el archivo svg en cuestión: http://david.bellot.free.fr/svg-cards/files/SVG-cards-2.0.1.tar.gz ( Actualización: este archivo ya no existe, pero puede rastrearlo abajo en http://svg-cards.sourceforge.net/ ) En su sitio, David, dice: Puede dibujar una tarjeta representando el […]

Cree PDF con imágenes PNG (redimensionadas) usando Pycairo – redimensionando el problema de la superficie

Tengo algunos enlaces de imágenes PNG que quiero descargar, “convertir a miniaturas” y guardar en PDF usando Python y Cairo. Ahora tengo un código de trabajo, pero no sé cómo controlar el tamaño de la imagen en papel. ¿Hay alguna manera de cambiar el tamaño de una superficie de PyCairo a las dimensiones que deseo […]

Guarde el contenido de un patrón Gtk.DrawingArea o Cairo en una imagen en el disco

Tengo un pequeño proyecto PyGI que utiliza una superficie de imagen de El Cairo , que luego escala con un patrón de superficie y renderizo en un Gtk.DrawingArea. Me gustaría escribir la versión escalada en un archivo PNG. He intentado escribir desde la superficie original con Surface.write_to_png () , pero solo escribe en el tamaño […]

Dibujo en PyGobject (python3)

Estoy tratando de escribir un editor gráfico simple usando PyGObject y python 3. Necesito dibujar líneas con diferentes colores y anchos usando el mouse. Encontré muchos ejemplos como este pero nada más complejo. ¿Cómo guardo la imagen dibujada entre eventos de ‘dibujo’? ¿Hay una forma incremental de dibujar o tengo que volver a dibujar el […]

¿Cómo obtener un fondo transparente en la ventana con PyGTK y PyCairo?

Me he esforzado mucho para crear una ventana sin decoración y un fondo transparente utilizando PyGTK. Luego dibujaría el contenido de la ventana con el Cairo. Pero no puedo hacerlo funcionar. He probado muchas maneras diferentes, todas fallaron, esta es una de ellas. #!/usr/bin/env python import pygtk pygtk.require(‘2.0’) import gtk, sys, cairo win = None […]

Cómo devolver una imagen en una respuesta HTTP con CherryPy

Tengo un código que genera un Cairo ImageSurface y lo ImageSurface así: def preview(…): surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, width, height) … cherrypy.response.headers[‘Content-Type’] = “image/png” return surface.get_data() preview.exposed = True Esto no funciona (los navegadores informan que la imagen tiene errores). He probado que surface.write_to_png(‘test.png’) funciona, pero no estoy seguro de en qué volcar los datos para […]