PHPに惚れました

今でも多分惚れてます。

PHPでレイヤー方式で画像を生成するavatar.phpが便利

読者対象

ハンゲームやモバイルゲームサイトにあるようなアバターをPHPで作りたいって方におすすめです。

前振り

アバターと言えば、帽子や服など、各パーツとなる透過画像を重ねて、
一枚の画像に見せるというのが一般的ですよね。

それをPHPで実現したライブラリを製作した方が居ました。

ソースコードのDL

PHPスクリプトのDLは以下のサイトから。(英語)
How to make custom avatars with PHP | BolducPress, a web design blogのThe Source Files下のリンク、
「Download the PHP and Photoshop Files」からDL出来ます。

利用方法

<?php
include_once("avatar.php");

//インスタンス
$avatar = new avatar;

//出力時の画像の横幅の指定(単位:px 縦横比は維持されます。)
$avatar->set_width(100);

//画像の背景色の設定
$avatar->set_background("#000000");

//ベースとなる背景画像(例えば衣服を着ていないキャラクターの画像、背景となる風景の写真など)
$avatar->set_background("my_background_image.png");

//ここからpngの透過画像をレイヤーとして追加していきます。
$avatar->add_layer("base.png");  
$avatar->add_layer("beer.png");
$avatar->add_layer("hat.png");
$avatar->add_layer("shorts.png");
$avatar->add_layer("mustache.png");

//画像の出力
$avatar->build();  
?>

これだけ。ね?簡単でしょ?


配布元のサイトへ行けば詳しいソースの解説もあります。
How to make custom avatars with PHP | BolducPress, a web design blog

ただ、レイヤーを何枚も重ねる場合、出力された画像を別ライブラリで
キャッシュしないと毎度毎度出力するには少し処理が遅くなります。