Create material deisgn avatars for users just like Google Messager.
It may not be unique but looks better than Identicon or Gravatar.
Android Client for Carbon Forum
- The PHP GD library.
<?php
require(dirname(__FILE__) . "/src/MDAvatars.php");
/*
'X' : The character that you want to fill to the avatar.
512 (pixel) : The size of the avatar.
*/
$Avatar = new Md\MDAvatars('X', 512);
?>
Or initialize with composer:
{
"require": {
"lincanbin/material-design-avatars": "*.*"
}
}
<?php
// composer
require(__DIR__ . "/vendor/autoload.php");
use Md\MDAvatars;
$Avatar = new MDAvatars('X', 512);
?>
<?php
$Avatar->Output2Browser();
?>
<?php
// You can resize the ouput size again here.
$OutputSize = 256;
$Avatar->Output2Browser($OutputSize);
// Output Base64 encoded image data.
$Avatar->Output2Base64($OutputSize);
// Get an image resource identifier.
$Avatar->Output2ImageResource($OutputSize);
?>
<?php
$Avatar->Save('./avatars/Avatar.png');
//You can resize the size you want to save again here.
$Avatar->Save('./avatars/Avatar256.png', 256);
$Avatar->Save('./avatars/Avatar128.png', 128);
$Avatar->Save('./avatars/Avatar64.png', 64);
?>
<?php
$Avatar->Free();
?>
If you do not need Chinese support, you can delete src/fonts/SourceHanSansCN-Normal.ttf
.
When you input a Chinese character, it will automatically extract the first letter of the pinyin of the Chinese character instead of the original input if you deleted src/fonts/SourceHanSansCN-Normal.ttf
.
$Avatar = new MDAvtars('林', 512);//The pinyin of "林" is "Lin".
This will be the same as that below if you deleted src/fonts/SourceHanSansCN-Normal.ttf
.
$Avatar = new MDAvtars('L', 512);//The first letter of that pinyin is "Lin".
Copyright 2015 Canbin Lin (lincanbin@hotmail.com)
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.