この PHP コードは私が作成したプログラムの一部です。共有するために投稿します。このコードの機能は、カスタム フォントを使用して画像上に英語を書くだけでなく、中国語も書くことができます。このコードは、認証コードや画像へのウォーターマークの追加などの機能に適しています。
<?php
/*
Photozero.net は PHP リファレンス ドキュメントから改変されました
*/
//ヘッダーを設定します。画像出力に失敗した場合は、このコードを一時的に削除してエラーメッセージを確認してください。
header("コンテンツタイプ: image/png");
header("キャッシュ制御: キャッシュなし");
$zh_text = 'Helvetica';
$en_text = 'Test'
//出力する単語
$zh_font = 'simhei.ttf';
$en_font = 'arial.ttf';
//フォントのファイル名。 Song フォント ライブラリと Heilong フォント ライブラリの英語はあまり優れていないため、中国語フォントと E フォントには別のフォントを使用することをお勧めします。
//ここではすべての TTF フォントが使用されます。オンラインで検索するのが面倒な場合は、C:WINDOWSFonts に移動し、いくつかのフォントをプログラム ディレクトリにコピーしてください。
//トゥルーカラーの画像の背景を作成します。パラメータは X 長さと Y 幅です。
$im = imagecreatetruecolor(400, 400);
//または、既存の PNG 画像などを呼び出すこともできます。 $im = imagecreatefrompng('background.png');
// いくつかの色を定義します
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
//背景を白で塗りつぶします。
imagefill($im, 0, 0, $white);
//背景を透明にする
imagecolortransparent($im,$white);
//上記の 2 行が透明な画像を作成するための鍵です。
//imagecreatetruecolorで作成した画像の背景色が黒で、どう修正しても白に変更できないとの回答が多かったです。
//まず背景を白で塗りつぶし、それから透明にします。 Firefox3 および IE7 で正常にテストされました。
// これは非常に単純なシャドウ効果です。
//最初にグレーのフォントを元の出力位置の左下隅に少しだけ出力し、次に黒のフォントで書いて影効果を作成します。
// 次回は他のトリックも紹介します~
//imagettftext($im, 20, 0, 11, 21, $grey, $en_font, $en_text);
// フォントを書き込む
imagettftext($im, 12, 0, 100, 120, $black, $en_font, $en_text);
imagepng($im);
imagedestroy($im);
// 言うまでもなく、画像を出力してキャッシュをクリアします。
//関数はすべて PHP に組み込まれています。理解できない場合はドキュメントを参照してください。
?>
コード全体の機能は比較的単純ですが、これは画像を作成するための比較的基本的なフレームワークです。確認コードを作成する場合でも、IP を表示するサービスを提供する場合でも、いくつかの変更を加えるだけですぐに使用できます。いつか必要になるかもしれないので、このコードを保管しておいてください。