The PythonProtoCards Open Source library provides classes and functions that are useful for rapidly prototyping printed card games.
The library makes it possible to programatically create lots of cards quickly. It helps you divide up work into different steps, so that you can manually create and edit game piece data or automatically generate it programmatically, and then generate printable images for this card and piece data. The data file format is designed to be very easy for humans to edit, but also parsable by code, which can load the data, modify it, and write out newly modified files, almost like a minimalistic database. This makes it easy to programmatically modify or add to existing data files that will also be hand edited.
The focus here is on very rapid prototyping (rather than pixel-perfect laytout control) so you'll find things like functions for automatically scaling text and images to fit within specific regions, text-wrapping, etc.
By interfacing with the Python Imaging Library (PIL), the PythonProtoCards classes can quickly generate large numbers of nice looking card images, and even lay them out for printing on card template sheets.
See the samples/codycards directory for a sample card game and scripts to create cards programmatically, and sample images
Please note this is an early release intended for programmers. I would very much like to extend this work to a full-featured tool for game designers, and even extend it to support online playtesting. If you are interested in seriously funding such work, please get in touch with me.
AUDIENCE: This code is intended for experienced coders who aren't afraid of getting their hands dirty..