An antipixel logo generator written in Python.
Go to file
2023-07-03 09:09:44 +01:00
apyx Updated to work with Python 3 and Pillow 2023-07-03 09:07:15 +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 with Python 3 2023-07-03 09:09:44 +01:00
README.md Updated to work with Python 3 2023-07-03 09:09:44 +01: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.

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.iter():
        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.


Bitdeli Badge