imagettftextとは? わかりやすく解説

imagettftext

(PHP 4, PHP 5)
imagettftext — TrueType フォントを使用してテキストを画像に書き込む

説明

array imagettftext ( resource image, float size, float angle, int x, int y, int color, string fontfile, string text )
指定した text を、 TrueType フォントを使用して画像に書き込みます。

パラメータ

image
imagecreatetruecolor() のような画像作成関数が返す画像リソース。
size
フォントサイズ。GD のバージョンに依存し、ピクセルサイズ (GD1) もしくはポイントサイズ (GD2) で指定する必要があります。
angle
度で表される角度。0 度は左から右にテキストを読む方向になります。 0 より大きな値は、時計廻りの回転を表現します。例えば、 90 という値は下から上にテキストを読む方向になります。
x
xy で与えられた座標は、最初の文字のベースポイント (ほぼ文字の左下角) を定義します。 この仕様は、xy で最初の文字の右上角を定義する imagestring() と異なっています。 例えば、左上は 0, 0 となります。
y
y 座標。これは文字の最下位置ではなく、 フォントペースラインの位置を指定します。
color
カラーインデックス。負の数を使用した場合、 アンチエイリアス機能がオフになります。 imagecolorallocate() を参照ください。
fontfile
使用する TrueType フォントのパス。
PHP が使用している GD ライブラリのバージョンに依存しており、 fontfile/ で始まらない場合、ファイル名に .ttf が追加され、 ライブラリはライブラリが定義したフォントパスから ファイル名を検索しようとします。
2.0.18 以前のバージョンの GD ライブラリを使用している場合、 異なるフォントファイルに対する 'パスの区切り文字' として セミコロンよりも space 文字が使用されます。 この特徴が意図せずに使用されることで Warning: Could not find/open font という結果になります。 これらの影響があるバージョンに対する唯一の解決方法は、 スペースを含まないパスにフォントを移動させることです。
フォントがスクリプトと同一ディレクトリに存在している場合のほとんどで、 以下のトリックが問題の軽減に繋がります。 <?php
// GD の環境変数を設定します
putenv('GDFONTPATH=' . realpath('.'));
       The y-ordinate. This sets the position of the fonts baseline, not
       the very bottom of the character.
// 使用するフォント名を指定します (拡張子 .ttf がないことに注意)
$font = 'SomeFont';
?>

text
テキスト文字列。
フォント内で 127 文字目以降の文字にアクセスするために、 (&#8364; のような) 十進数文字参照を含めることができます。 (&#xA9; のような) 十六進形式は PHP 5.2.0 以降でサポートされます。 UTF-8 エンコーディングされた文字列を直接渡すことができます。
&copy; のような文字エンティティはサポートされません。 html_entity_decode() を使用して、 文字エンティティを UTF-8 文字列にすることを検討してください (html_entity_decode() は、PHP 5.0.0 以降でこの機能をサポートします)。
フォントでサポートされていない文字が文字列で使用されている場合、 その文字は白抜きの矩形に置き換えられます。

返り値

テキストの境界を 構成する 4 点を表す 8 個の要素を有する配列を返します。 返される点は左上、右上、右下、左下の順番となります。 点の座標は、角度によらず text に関する相対座標として表されます。 つまり、"左上"は、text を水平に見た場合の左上の隅を表します。

例 947. imagettftext() の例
この例は、400x30 ピクセルの白地に Arial フォントを用いて、黒字 (グレーの影付き) で "Testing..." と書かれた PNG を作成します。
<?php
// コンテントタイプを設定します
header("Content-type: image/png");

// 画像を生成します
$im = imagecreatetruecolor(400, 30);

// いくつかの色を生成します
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// 描画する文字列
$text = 'Testing...';
// フォント自身のパスでパスを置き換えます
$font = 'arial.ttf';

// テキストに影を付けます
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// テキストを追加します
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// imagepng() を使用して imagejpeg() よりもクリアなテキストにします
imagepng($im);
imagedestroy($im);
?>


注意

注意: この関数は GD ライブラリと » FreeType ライブラリの両方が必要です。

参考

imagettfbbox()





固有名詞の分類

このページでは「PHP関数リファレンス」からimagettftextを検索した結果を表示しています。
Weblioに収録されているすべての辞書からimagettftextを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からimagettftextを検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「imagettftext」の関連用語

imagettftextのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



imagettftextのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.

©2024 GRAS Group, Inc.RSS