1.0 まずはコードを見てみましょう
それでは、上記のコードを組み合わせて、上で使用したいくつかの関数を分析してみましょう:
① imagecreatetruecolor();
imagecreatetruecolor — 新しいトゥルー カラー イメージを作成します (とても長く感じますが、実際には image/create/true/color を注意深く見ると簡単に覚えられます。トゥルー カラー イメージとは何ですか? 続きを読んでください)
リーリー
imagecreatetruecolor() と imagecreate() の両方の関数でキャンバスを作成できます
リーリー
imagecreatetruecolor() は、サイズ x と y の黒い画像を作成します (デフォルトは [トゥルー カラー イメージと呼ばれる場合でも] 黒です)。背景色を変更したい場合は、
塗りつぶしカラー関数imagefill($img,0,0,$color)を使用します
imagecreate 新しい空の画像リソースを作成し、imagecolorAllocate() を使用して背景色を追加します
上記の 2 つの関数は、同じ関数の 2 つのメソッドにすぎません
imagecolorallocate — 画像に色を割り当てる
リーリー
色は赤、緑、青で構成されます。これらのパラメータは 0 ~ 255 の整数、または 16 進数の 0x00 ~ 0xFF です。
mt_rand — より良い乱数を生成する
リーリー
$min オプション、返される最小値 (デフォルト: 0) $max オプション、返される最大値 (デフォルト: mt_getrandmax())
2.0 内部に干渉線と干渉点を作成し始めます。検証画像が数秒で認識されないようにする
リーリー
機能分析:
imageline — 線分を描画します
リーリー
imageline() は、イメージ画像上に座標 x1,y1 から x2,y2 (画像の左上隅が 0,0) までの線分をカラー color を使用して描画します。
imageline($img, mt_rand(0,150), mt_rand(0,50), mt_rand(0,150), mt_rand(0,50), $linecolor); これは、キャンバス内の座標 x1, y1 から x2, y2 までを意味します $img Random
② imagesetpixel();
imagesetpixel — 単一ピクセルを描画します
リーリー
imagesetpixel() は、カラー color を使用して、イメージ image 内の x、y 座標 (イメージの左上隅が 0, 0) に点を描画します。
リーリー
レンダリング:
3.0 検証英数字を追加
リーリー
機能:
imagettftext();
imagettftext — TrueType フォントを使用して画像にテキストを書き込みます
リーリー
以下のコードを分析してください:
$img----------キャンバス
25----------フォントのサイズ。
mt_rand(-15,15)----------角度システムで表される角度。0 度はテキストが左から右に読まれることを意味します。値が大きいほど反時計回りの回転を示します。たとえば、90 度は下から上に読むテキストを表します。 (フォントの角度の問題です)
$x_start----------簡単に言うとキャラクターのX軸の位置です
50/2----------文字の高さ
$fontcolor----------文字色
"C:/Windows/Fonts/Verdana.TTF"----------文字フォントスタイルパス
$key----------次の文字を走査します
効果:
上記の内容は、この記事で紹介されている最新かつ最も完全な PHP コード生成および運用検証コードの全体的な説明です (推奨)。