〜 KIF出力→PNG盤面出力CGI MakeBan 〜

作成日 2004.9.15 
最終更新日 2005.3.17 

「Kifu for Windows」で出力した盤面図から、PNG画像を作成します。
 GDライブラリを使用しています。サーバにGDライブラリがない場合動作しません

 自分のPCでMakeBanを動かし、画像を作成することもできます。プロバイダがGDライブラリを用意していない場合でも、この方法でMakeBanを使用することができます。
 解説ページを用意しましたので、参考にして下さい。

〜 MakeBanを自分のPCで使う AnHTTPD+ActivePerl+GDインストール法 〜


■特徴

 できるだけ「手作りに近い」画像を作成したいと思ったので作りました。「飛飛金金」の持駒を飛2金2と表示することはまずないでしょう。せっかく画像を作成するのに、成銀を全では意味がありません。「画像を作る時に、自分ならどう書くか?」を考え、できるだけそれを実現するようにしました。
 まぁ、自給自足ですかね(誤)。


■サンプルとダウンロード

サンプル

以上の条件に同意できた場合のみ、ファイルをダウンロードして下さい。また、ファイルをダウンロードした場合、無条件に上の条件に同意したものとします。

Ver 1.01
LHA形式
makeban101.lzh
ZIP形式
makeban101.zip

■設置方法1.パラメーター設定

 makeban.cgiをエディタで開いて、以下のパラメーターを適切なものに設定しなおして下さい。

#!/usr/local/bin/perl
 (プロバイダで定められたPerlへのパスを指定します)

$script = 'http://www.xxx.ne.jp/~xxx/makeban.cgi';
 (このCGIが置かれている場所をURLで指定して下さい)

$pass = '0123';
 (管理用パスワード(英数字)を指定して下さい。常識の範囲の長さでひとつ)

@writedir = (
'./aaa/images/',
'./bbb/images/',
'./ccc/images/'
 (出力したいフォルダを指定して下さい。フォルダが複数ある場合はそれを全て書きます。最後の部分には,をつけないで下さい。つけても動くことは動きますが……)


■設置方法2.アップロードとパーミッション設定

パラメーターの設定が終わったら、ファイルをアップロードします。
どこにアップロードしていただいても構いませんが、以下の注意点を守って下さい。 パーミッションは、makeban.cgiのみ755にして下さい。他の4ファイルはパーミッションの変更は必要ありません。


■画像作成の方法

 makeban.cgiにアクセスすると入室画面になります。パスワードを入力して「認証」ボタンを押して下さい。パスワードが認証されると、メイン画面になります。
 直感的に使用方法は判ると思いますが、とりあえず説明を。

 盤面テキストは、「※下のフォームに盤面を入力して下さい」と書かれた下の領域に書き込んで下さい。「Kif for Windows」で「編集」→「盤面」→「通常」で盤面テキストは作成できます。そのまま貼り付けて下さい。
 盤面を貼り付ける時の注意なんですが、最後の行が必ず改行されていることが必要です
 というとちょっと判りにくいんですが、一番最後の行の先手の持駒の部分、これが、

歩|


 となっているとダメです(|はカーソルを表しています)。

|


 という風に、行が変わっていないとダメ、ということです。
 内部的に、改行コードを取るという処理を入れていますので、全ての行に改行がないとダメなんです。
 うまいことやればなんとかなると思うんですが、簡単な処理だけで済ませた結果こうなってしまいました。ご了承下さい。

 右側の項目では、細かい設定ができます。

■タイトル形式
盤面画像上に作成されるタイトルの形式を選択します。  のどれかを選べます。

「第」と「図」の間にあるテキストボックスに数字を入れると、それが盤面番号になります。例えば23と入れると、【第23図は×××まで】というタイトルが作成されます。
 盤面番号を入れないこともできます。その場合は番号は出ません(0と出るわけではありません)ので、例えば【途中図は▲7七桂まで】や【途中15図は▲7七桂まで】という風に使い分けができます。

 ×××には、KIF盤面で書かれている指し手が入ります。一応、同寄上左右入等の表記にも対応しています。「▲7二同銀引左不成」といった長い指し手にも対応できます。
 詰将棋用の「合」という文字も出せます。貼り付けた指し手の「打」を「合」に変更して下さい(まだ自動変換はできません。あった方がいいですかね?)。

■編集項目
 項目にチェックを入れると、それぞれの動作を行います。
■画像名
 フォルダをセレクトボックスから選択し、ファイル名をテキストボックス内に書きます。
「フォルダ名/ファイル名.png」というPNG画像が作成されます。

 全て設定したら、「書き込み」ボタンを押して下さい。画像が作成されます。

 作成が終了すると、「↓■さっき作った画像はこれです↓」というメッセージとともに作成した画像が表示されます。ファイル名、フォルダ名の部分はそのとき指定したものをそのまま残すように設定していますので、気に入らない画像でしたらもう一度設定→書き込みをすると画像が上書きされます。

■質問など

 質問などはサポート掲示板の方にお願いします。
 いろいろ質問が出揃えば、FAQみたいなものも作ると思います。

掲示板はこちら


■開発履歴  古いバージョンもダウンロードできます(LZH版です)

v1.01 指し手が不成なのに盤上に成駒を書いてしまうバグを修正(気づけや……)。結崎羽矢さん指摘。ありがとうございました。
v1.00 公開。

■謝辞/ひとこと

 将棋のページにもちょこっと書いたことなんですが、このCGIスクリプトを作った直接の動機は、一通のメールでした。

 そのメールでは、白砂のHPを愛読している、これからも頑張って欲しいといった嬉しい言葉が並んでいましたが、一つだけ、ちょっとおまけみたいな形で、苦言が呈されていました。
 テキストで書かれた図面が見づらい、というんですね。
 後手の駒をvをつけて表すもので、例えば後手の歩は「v歩」と表します。

 個人的にも見づらいということは承知していたのですが(以前にも苦言を呈された方がいました)、やはり図面を作るというのは非常に手間が掛かるので、さくっと更新できなくなるんですね。それだったら、多少見づらくても素早く作成できる方が、結果的に息の長い更新ができるかなと(笑)。

 そんな時、偶然なんですが、GDライブラリがGIF対応を復活させた、というニュースを聞きました。
 あ、これならGIF画像が作れるぞ! ラクだぞ! というわけで、CGI作りにチャレンジしました。
 しかしまぁなかなか面倒で、GDライブラリの最新版もコンパイルできないヘタレなんで、結局GIFは諦めて旧式のPNGで作成しました。どなたか、サルでも判るActivePerlへのインストール方法を教えて下さい。Makefile.plとか見てもなにがなんだか……(泣)

 まぁ、そういうわけで、いつもの通り自給自足的なスクリプトです。
 どれだけの人が使っていただけるのか判りませんが、その方々が満足していただけたのであれば幸いです。
 いろいろバージョンアップもしていきたいと思いますので、ご要望があればどんどん言って下さい。技術が伴えば(笑)対応します。

白砂 青松

トップへ戻る