pyavagen
Generation of customizable avatars.
Requirements:
- Python 3.3+
- Pillow
Installation:
pip install pyavagen
Avatar types
For avatar generation using the Avatar
class.
Arguments:
kwargs
- keyword arguments that are passed to specified avatar_class.avatar_type
- avatar type that will be generates an image.
Types:
pyavagen.SQUARE_AVATAR
or'square'
pyavagen.CHAR_AVATAR
or'char'
pyavagen.CHAR_SQUARE_AVATAR
or'char_square'
Avatar types description is given below.
Char avatar
Draws a character on background with single color.
Usage:
import pyavagen
avatar = pyavagen.Avatar(pyavagen.CHAR_AVATAR, size=500, string="Paul")
avatar.generate().save('avatar.png')
Arguments:
size
- size of output image. The integer type.string
- first chars of two first words that separated whitespaces. For example from string 'John Paul' draws "JP". If passed an one word then draws a first char of this word. For example from string 'John' draws "J". The string type.font
- TrueType or OpenType font file. Path to font file. Default Comfortaa-Regular.background_color
- background color. If not passed that a will be a random color fromcolor_list
.font_size
- size of font. The integer type. Has default value.font_color
- color of font. The string type. Default white.font_outline
- Outline of character. Default false.color_list
- list of colors from which will be generating colors for background. Defaultpyavagen.COLOR_LIST_FLAT
.
Square avatar
Draws squares with different colors.
Usage:
import pyavagen
avatar = pyavagen.Avatar(pyavagen.SQUARE_AVATAR, size=500)
avatar.generate().save('avatar.png')
Arguments:
size
- size of output image. The integer type.squares_on_axis
- number of squares on axis. The integer type. Default random value from 3 to 4.blur_radius
- blur radius. UsedPIL.ImageFilter.GaussianBlur
.The integer type. Default 1.rotate
- image rotate. The integer type. Default random rotation.border_size
- border size of square. The integer type. Default 0.border_color
- border color of squares. The string type. Default black.color_list
- list of colors from which will be generating colors for squares. By default a set of flat colors (pyavagen.COLOR_LIST_FLAT
). Ifcolor_list
passed as an empty list then will be generation a random color. There is also list of colors in material style -pyavagen.COLOR_LIST_MATERIAL
.
Char square avatar
Draws a character on background with squares with different colors.
Usage:
import pyavagen
avatar = pyavagen.Avatar(pyavagen.CHAR_SQUARE_AVATAR, size=500, string="Jack")
avatar.generate().save('avatar.png')
Arguments:
The same arguments as for Square avatar and Char avatar.
Testing
Execute tox
from the project root.