lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Cairo is an excellent library, and it's a great idea to bind it to Lua.
Thank you for sharing your extremely useful work!

There are some other useful libraries that plug together with Cairo, that you might be interested in integrating with Lua:
Pango: text formatter, supporting unicode, internationalized text 
layout, simple html-like markup formatting, that uses Cairo to handle 
fonts and draw text.
poppler: PDF file reader and renderer with a Cairo back-end.

rsvg: SVG file reader and rederer with a Cairo back-end.

Firefox is developing a Cairo back-end for rendering dhtml, SVG, and everything else, and will support rendering with 3d hardware accelerators across different platforms!
GTK supports Cairo and Pango, and pygtk and  pycairo expose them to 
Python, so that other Python modules like pypango and your own rendering 
modules can be passed a Cairo context and call Cairo directly, to render 
very efficiently through the same Cairo context as the rest of the 
system is using to draw. (The pycairo module installs some .h files that 
your dependent module includes, that allow it to extract the cairo 
context from a Python wrapper object created by pycairo.)
The OLPC (One Laptop Per Child) project is using Cairo and other related 
libraries, and there's a lot of work going into improving an optimizing 
Cairo.
Cairo is great for drawing scalable interactive user interfaces, as well 
as video overlays, information visualization, maps, graphs and data 
driven graphics!
Here are some pictures of the pie menus I wrote in Python for the OLPC, 
and drew with Cairo and Pango (and a link to the source code):
http://www.donhopkins.com/drupal/node/128

   -Don