zertex / avatar-generator
Avatar generator by username, file or url.
Installs: 3 740
Dependents: 1
Suggesters: 0
Security: 0
Stars: 9
Watchers: 1
Forks: 1
Open Issues: 0
Requires
- php: >=7.0.0
Requires (Dev)
- phpunit/phpunit: 4.*
README
Generate avatar for user by his name, file or url.
Features
- Saving to PNG format
- Generate avatar by username
- Generate avatar from file or url (http only)
- Auto select background color by username
- Contrast color for text
- Font face and size customize
- PNG Textures for background
Dependencies
- PHP 7
- PHP GD
Installation
Install with composer:
composer require zertex/avatar-generator
or add
"zertex/avatar-generator": "*"
to the require section of your composer.json
file.
Configuration
$options = AvatarOptions::create() ->setFont('path to ttf font') ->setWidth(300) ->setFontSize(200) ->setTexturesFolder('path to textures folder') ->setImagesFolder('path to generated images folder') ->setImagesUrl('url to images folder') ->setSalt('random salt');
- setFont - Path to TTF font
- setWidth - Width & height avatar image file. Default: 300
- setFontSize - Font size. Default: 200
- setTexturesFolder - Path to textures folder. Used only PNG textures
- setImagesFolder - Path to image folder.
- setImagesUrl - Url for generating complete link to image
- setSalt - Random text for new image file name
Using
Generate avatar image by username
$image_src = Avatar::init('John Smith', $options, [result file name]) ->username() ->texture('TEXTURE_NAME') ->text() ->get_file_name();
Generate avatar image from file
$image_src = Avatar::init('John Smith', $options, [result file name]) ->file('/path/to/file') ->texture('TEXTURE_NAME') ->text() ->get_file_name();
Generate avatar image from url
$image_src = Avatar::init('John Smith', $options, [result file name]) ->file('http://your-site.com/image.jpg') ->texture('TEXTURE_NAME') ->text() ->get_file_name();
You can exclude texture or text from chain for exclude them
Textures
You can use PNG texture with transparancy. Every texture must consist of 2 files (back & white). His names myst be:
TEXTURE_NAME . '-' . COLOR . '.png'
- TEXTURE_NAME - Any words. In texture() method you can use array of TEXTURE_NAME for random
- COLOR - Must be
black
orwhite
Screenshot
Yii2 extension
Avater generator extension for Yii2 here: https://github.com/zertex/yii2-avatar-generator
There you can find 2 textures and Play-Bold.ttf font