Web 開発では、画像にテキストを追加することがよくありますが、テキストを中央に表示したい場合は、それに応じて php で gd ライブラリを設定する必要があります。
PHP GD ライブラリは、画像の作成と操作に使用できる PHP 用のグラフィック処理ライブラリです。 GD ライブラリを通じて、テキストの追加、線の描画、グラフィックの描画、および画像に対する一連の操作を実行して、カスタマイズされた画像要件を実現できます。これらの操作において、テキストの中央表示は非常に一般的な要件ですが、GD ライブラリでテキストの中央表示を設定する方法を紹介します。
最初に明確にしておきたいのは、テキストを追加するために GD ライブラリが提供する関数は imagestring()
と imagestringup()
であるということです。これら 2 つの関数の機能は、指定されたフォントとフォント サイズに従って文字列がレンダリングされるように、文字列を画像に追加することです。ここでは主にimagestring()
の使い方を紹介します。
imagestring()
関数の構文形式は次のとおりです:
bool imagestring ( resource $image , int $font , int $x , int $y , string $string , int $color )
このうち、 $image
は画像リソースを表し、 $font
はフォント サイズを表します。 ##$x と
$y は画像内の文字の左上隅の位置を表し、
$string は出力される文字列を表し、
$ color は文字列の色を表します。
<?php // 定义文本信息 $text = "Hello World!"; // 定义字体大小 $fontsize = 20; // 获取字体的宽度和高度 $fontwidth = imagefontwidth($fontsize); $fontheight = imagefontheight($fontsize); // 定义图片的宽度和高度 $imageWidth = strlen($text) * $fontwidth; $imageHeight = $fontheight; // 创建一个指定大小的画布 $image = imagecreate($imageWidth, $imageHeight); // 设置背景颜色 $bgColor = imagecolorallocate($image, 255, 255, 255); // 设置文本颜色 $textColor = imagecolorallocate($image, 0, 0, 0); // 计算文本的 X 和 Y 坐标 $textX = ($imageWidth - strlen($text) * $fontwidth) / 2; $textY = ($imageHeight - $fontheight) / 2; // 在画布上添加文本 imagestring($image, $fontsize, $textX, $textY, $text, $textColor); // 输出图像 header('Content-Type: image/png'); imagepng($image); // 释放内存 imagedestroy($image); ?>
imagefontwidth() および
imagefontheight() を使用してフォントの幅と高さを計算し、画像のサイズとテキストの位置を決定します。次に、指定したサイズのキャンバスを作成し、背景色と文字色を設定します。最後に、関数
imagestring() を通じてテキストがキャンバスに追加されます。テキストの X 座標と Y 座標を計算するときは、次の式を使用することに注意してください。
$textX = ($imageWidth - strlen($text) * $fontwidth) / 2; $textY = ($imageHeight - $fontheight) / 2;
imagecolorallocate() 関数を使用してテキストと背景の色を設定します。実際の特定のプロジェクトでは、特定のニーズに応じて調整を行うことができます。
以上がphp gdはテキストを中央に設定しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。