PHPとGDで透過png画像テキストを出力する

透明度のあるイメージをつくる。

<?php
$width  = 300;// px
$height = 40;// px
$text   = 'This is a sample.';// string
$font   = '/usr/share/fonts/bitstream-vera/ACaslonPro-Bold.otf';// path

$img             = imagecreatetruecolor($width, $height);
$color           = imagecolorallocatealpha($img, 210, 0, 0, 255);
$backgroundColor = imagecolorallocatealpha($img, 255, 255, 255, 127);
imagealphablending($img, true); // ブレンドモードを設定する
imagesavealpha($img, true); // 完全なアルファチャネルを保存する

imagefill($img, 0, 0, $backgroundColor); // 指定座標から指定色で塗る 
imagettftext($img, 16, 0, 16, 40, $color, $font, $text);

header('Content-type: image/jpeg');
imagepng($img);
imagedestroy($img);
?>

すけすけ画像テキストだ!=3

PHPとGDで透過png画像テキストを出力する” への1件のコメント

  1. はじめまして。

    最近PHPを勉強し始めています。
    phpのインストールから始めて3日目です。ネットでいろいろサンプルを見ていて、
    GDを使って文字を画像変換を始めました。なかなか上手くいかず、素行錯誤してようやく出来たのですが、今度は作った文字の背景が気に入らず、透明化に挑戦しました。
    いろいろサイトのソースを見ましたが、このサイトの情報は、非常にわかりやすく参考になりました。

    文字に影を付ける事も行っていたのですが、ぼかす処理
    ImageFilter($img, IMG_FILTER_GAUSSIAN_BLUR);
    を行うと、背景にゴミが残るので、ぼかす処理を止めることとしました。

    このサイトのカテゴリを拝見すると、難しい言葉がたくさん並んでおり、ちょくちょく参考にさせていただきます。

    ps
    PHP(プログラム)は難しいですね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です