原理が気になったので似たようなものを作成してみました。
※勝手に構造を妄想して作った物です。実際のものとは異なる可能性があります。
サンプル:FrontPage
#!/usr/bin/perl ############################################# #スクリプト名:画像認証画像作成スクリプト #バージョン:Ver.1.0.0 #作成者:ORBIT #サイト:https://www.orsx.net/ #著作権: #完全フリーです。 #ご自由に改造してください。参考になった場合は #リンクしていただけると助かります。 #目的: #画像認証に使用する画像を作成する ############################################# #============================================ #設定 #============================================ #画像の背景 $tempfile = 'temp.jpg'; #保存する画像名 $imgname = './test.jpg'; #フォント $font='./Bedrock.ttf'; #文字の色 $color='red'; #文字のサイズ $fontsize = '30'; #出力する文字数 $number = '7'; #============================================ #モジュール使用宣言 use Image::Magick; #ランダムな英数を作成する @character = ('0'..'9','a'..'z'); for ( $i = 1; $i <= $number; $i++ ){ $pcode .= $character[rand(@character)]; } #画像作成 $img = Image::Magick->new; $img->Read($tempfile); $img->Annotate(text=>$pcode, geometry=>'+0+0', gravity=>'Center', fill=>$color, font=>$font, pointsize=>$fontsize); $img->Write($imgname); undef $img; #表示 print "Content-type: image/jpegnn"; open IMGG, "$imgname"; binmode (IMGG); binmode (STDOUT); print <IMGG>; close (IMGG);
0 Comments.