画像認証用画像作成スクリプト CGI
2月 19, 2010 — 13:14

原理が気になったので似たようなものを作成してみました。
※勝手に構造を妄想して作った物です。実際のものとは異なる可能性があります。
サンプル:FrontPage

#!/usr/bin/perl
#############################################
#スクリプト名:画像認証画像作成スクリプト
#バージョン:Ver.1.0.0
#作成者:ORBIT
#サイト:http://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);

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

(Spamcheck Enabled)

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)