crena の変更点   

  • 追加された行はこの色です。
  • 削除された行はこの色です。
  • crena へ行く。

* crena proxy の作り方 [#zaea7164]

*** xampp のインストール [#we223ead]
pleiades ultimate のall in package などが入っていればそのまま使用~
なければ別途インストール

*** crena のインストール [#e95574ed]
 http://dip.picolix.jp/disp5.html

展開して、下記ファイルを c:/pleiades/xampp/cgi-bin/ におく
 CrenaHtml2jpg.exe
 CrenaHtml2jpg.ini

*** proxy 用の cgi の設置 [#la1dcb15]
注: もちろん自分以外が使う場合はこのまま使ってはダメです。~
アクセス制限や、引数のチェックをかけましょう~

c:/pleiades/xampp/cgi-bin/crena.cgi

 #!"C:\pleiades\xampp\perl\bin\perl.exe"
 
 foreach $line (@ARGV) {
     @pair = split(/=/,$arg);
     if ($pair[1]){$param{$pair[0]} = $pair[1];}
 }
 
 ## PARAMS
 #$URL      = $param{'URL'};
 #$WIDTH    = $param{'WIDTH'};
 #$HEIGHT   = $param{'HEIGHT'};
 
 $URL = $ENV{'QUERY_STRING'};
 
 unless ($URL){
     print "Content-type: text/html\n\n";
     print "<pre>";
     print "Usage:\n";
     printf("http://%s%s?http://yahoo.co.jp",$ENV{'SERVER_NAME'},$ENV{'REQUEST_URI'});
 
     print "</pre>";
     exit(1);
 }
 
 # 初期値設定
 unless ($WIDTH) {$WIDTH  = 1200;}
 unless ($HEIGHT){$HEIGHT = 1200;}
 #unless ($OUTPUT){$OUTPUT = "out.png";}
 
 ($sec,$min,$hour,$mday,$month,$year,$wday,$stime) = localtime(time());
 $OUTPUT = sprintf("%04d%02d%02d%02d%02d%02d.png",$year+1900,$month+1,$mday,$hour,$min,$sec);
 
 ## main
 
 $SIZE = sprintf("%dx%d",$WIDTH,$HEIGHT);
 
 # for xampp perl
 # system("kill.exe CrenaHtml2jpg");
 system("c:\\pleiades\\xampp\\cgi-bin\\CrenaHtml2jpg.exe -p -w$SIZE -s$SIZE -u\"$URL\" -o$OUTPUT -fpng");
 
 # for sygwin perl (c:\cgywin\bin\perl.exe)
 #system("./kill.exe CrenaHtml2jpg");
 #system("./CrenaHtml2jpg.exe -p -w$SIZE -s$SIZE -u\"$URL\" -o$OUTPUT -fpng >> log.txt");
 
 $file = $OUTPUT;
 
 $len = -s $file;
 
 if ($len == 0 ){
     printf "Content-type: text/html;\n\n";
     printf "no such file. %s",$file;
     exit;
 }
 
 printf "Content-type: image/png\n\n";
 #printf "Content-length: %d\n\n",$len;
 
 binmode STDOUT;
 open(DATA,$file);
 binmode DATA;
 read(DATA,$buf,$len); 
 print $buf;
 close(DATA);
 
 unlink($OUTPUT);
 
 exit;
 1;