An antipixel logo generator written in Python.
Go to file
2021-09-29 02:14:13 +02:00
apyx First commit of the library 2013-12-01 14:20:35 +01:00
fonts First commit of the library 2013-12-01 14:20:35 +01:00
.gitignore Excluding eggs and egg-info 2013-12-01 14:21:08 +01:00
apyx_example.py Updated to work under Python3 2021-09-29 02:14:13 +02:00
README.md Removed BitDeli badge and added info on how to install depencencies in README.md file 2021-09-29 02:14:13 +02:00
setup.py First commit of the library 2013-12-01 14:20:35 +01:00

APyX - Simple Python-powered Antipixel generation library

This library provides facilities for generating programmatically Antipixels from Python.

This is especially useful if you want to quickly generate batches of antipixels.

Dependencies

pip install -r requirements.txt

Usage example

In its simplest form, you can call the create_antipixel() function, passing a configuration dictionary like this as the only argument:

{
    'base': {
        'size': (80, 15),
        'outline': '#000',
        'background': '#fff',
        'font_path': 'fonts/slkscr.ttf',
    },
    'parts': [
        dict(text='DEBIAN', background='#d70751', color='#fff',
             sizing='even', align='center'),
        dict(text='LINUX', background='#fff', color='#d70751',
             sizing='even', align='center'),
    ],
}

..but that's definitely tedious, so we'll automatize things a bit.

here = os.path.dirname(__file__)
output_dir = os.path.join(here, 'output')
default_base = {
    'size': (80, 15),
    'outline': '#000',
    'background': '#fff',
    'font_path': os.path.join(here, 'fonts', 'slkscr.ttf'),
}
antipixels = {
    'debian': {
        'parts': [
            dict(text='DEBIAN', background='#d70751', color='#fff',
                 sizing='even', align='center'),
            dict(text='LINUX', background='#fff', color='#d70751',
                 sizing='even', align='center'),
        ],
    }
}

if __name__ == '__main__':
    from apyx import create_antipixel

    if not os.path.exists(output_dir):
        os.makedirs(output_dir)

    for name, config in antipixels.iteritems():
        if 'base' not in config:
            config['base'] = default_base
        print("Creating antipixel {0}".format(name))
        image = create_antipixel(config)
        image.save(os.path.join(output_dir, '{0}.png'.format(name)))

Even better, we can use some "templates" for common patterns! So, that definition becomes:

from apyx.templates import twoparts_even_altcolor

antipixels = {
    'debian': twoparts_even_altcolor('DEBIAN', 'LINUX', '#d70751', '#fff'),
}

For a complete example, have a look at apyx_example.py, in the main project folder.