SQLの窓 イラストAC フリー素材

2014年04月10日

PHP : GD で Windows のビットマップを扱う


PHP : GD で Windows のビットマップを扱う


以前、GD => BMP の片方向を見つけて、手書きブログ用のオンラインハートエディタで利用したのですが、そのハートエディタの中身を再利用できるように整理する為に調べていると、BMP から GD への変換が前回見つけた PHP のオンラインマニュアルの投稿部分の違うページにある事が解りました。


以前は、関数一覧のページだったのですが、今回は imagecreate 関数のページでした。双方向ですし、サンプルソースも長くなるので上記リンクから参照できるようにしています。

一応、動く簡単なサンプルコードにはなっていますが、オリジナルと全く変わっていません
( 一部コメントが化けてたので日本語にしましたけれど )

処理の特徴としては、unpackpack 関数を使用してバイナリデータを本来の構造どおりに整備して処理しているところです。

フォーマットに使われている文字列は、1文字目が形式で、2文字目以降は『名前(任意)』です。
コード説明
aNUL で埋めた文字列
A空白で埋めた文字列
h十六進文字列、下位ニブルが先
H十六進文字列、上位ニブルが先
csigned char
Cunsigned char
ssigned short (常に 16 ビット、マシンのバイトオーダー)
Sunsigned short (常に 16 ビット、マシンのバイトオーダー)
nunsigned short (常に 16 ビット、ビッグエンディアンバイトオーダー)
vunsigned short (常に 16 ビット、リトルエンディアンバイトオーダー)
isigned integer (サイズおよびバイトオーダーはマシン依存)
Iunsigned integer (サイズおよびバイトオーダーはマシン依存)
lsigned long (常に 32 ビット、マシンのバイトオーダー)
Lunsigned long (常に 32 ビット、マシンのバイトオーダー)
Nunsigned long (常に 32 ビット、ビッグエンディアンバイトオーダー)
Vunsigned long (常に 32 ビット、リトルエンディアンバイトオーダー)
ffloat (サイズおよび表現はマシン依存)
ddouble (サイズおよび表現はマシン依存)
xNUL バイト
X1 バイト戻る
ZNUL 埋め文字列 (PHP 5.5 以降)
@絶対位置まで NUL で埋める
オリジナルコードへのリンク

to create an image from a BMP file

If you happen to need a way to output a Windows BMP file



タグ:PHP gd
【PHPの最新記事】
posted by at 2014-04-10 03:05 | PHP | このブログの読者になる | 更新情報をチェックする