麻由フォント


■ 概要
「麻由フォント」は掲示板用に作った手書きフォント画像です。パソコンにインストールして使うフォントではありませんのでご注意ください。パソコンにインストールして使うフォントは、インストールしたパソコンでしかそのフォントを見ることができませんが、このフォント画像を掲示板に使うと、掲示板にアクセスした人はみんなそのフォントで表示された投稿を見ることができます。漢字のフォント画像は作ってないので、子ども用の掲示板に使うのがいいかもしれません。思いつきで作ってしまったので、ご利用方法は皆さまにおまかせします。ただし再配布は禁止します(フォント画像を追加して再配布することも含みます)。

■ サンプル
私のオリジナル掲示板に「麻由フォント」を表示させてみました。→

■ ダウンロード
以下をダウンロードした後、圧縮・解凍ソフトで解凍してください。
(123KB)

■ 同梱ファイル
フォント画像ファイル241個とスペース画像ファイル1個、説明ファイル(合計243ファイル)が入っています。→ フォント一覧

■ 注意事項
1. 「麻由フォント」はどんな掲示板でも表示できると思います。ただしレンタル掲示板など、CGIを直接いじることができない掲示板には表示できません。フリーのCGI掲示板を自分で設置して使ってる方なら大丈夫だと思います。

2. 「麻由フォント」に含まれない文字を投稿すると、その文字の部分の画像は表示されません(×印が表示されます)。それを防ぐためには投稿時に入力チェック(文字コードのチェック)をすればよいのですが、そこまでできる方はやってみてください。

3. 「麻由フォント」のフォント画像の高さはすべて25pixelになっていますので、フォント画像を追加するときは、その画像の高さが25pixelになるようにしてください。またフォント画像のファイル名は、その画像に書かれた文字の「文字コード」(Shift_JIS)にしてください。たとえば漢字の「箱」は文字コードが「94a0」なので、フォント画像のファイル名は「94a0.gif」になります。

4. 「麻由フォント」では、エクスクラメーションマーク(!)、クエスチョンマーク(?)、丸カッコに、全角の文字コードを割り当てています。そのため半角で書き込んでもフォント画像は表示されません。半角で書き込んで表示されるようにするには、フォント画像のファイル名を半角の文字コードに変えてください。また全角のアスタリスク(*)ではハートマークが、全角のアットマーク(@)ではくるくるマークが表示されるようにしています。一方スペースは半角の文字コードを割り当てていますので、全角で書き込んでも表示されません。全角で書き込んで表示されるようにするには、スペース画像のファイル名を全角の文字コードに変えてください。

■ 設置方法
1. 「麻由フォント」を設置したい掲示板のCGIファイルの中から、投稿文を表示させる部分を探します。CGIファイルが複数ある場合は、たとえば、bbs_read.cgiなどの名前のついたファイルを見ればいいと思います。その中に複数のprint文があれば、そのあたりで投稿文を表示しているはずです。

2. フォントを表示させたいprint文が見つかったら、以下のようにコードを書き換えてください。赤字の$strの部分は一致させてください。上のサンプル(下の修正例)では投稿内容を表示しているprint文だけを修正していますが、投稿者名、投稿時刻を表示しているprint文も同じように修正すれば、フォントを表示させることができます。

<修正前>

{
         :
         :
        print "$str<br>\n";
         :
         :
}

<修正後>

{
         :
         :
        &font_hyoji($str);
         :
         :
}

sub font_hyoji {
        my $str0 = @_[0];

        # require 'jcode.pl';
        # jcode::convert(\$str0, 'sjis');         # $str0 を Shift_JIS に変換する

        for($i=0; $i<length($str0); $i++){
                $moji = substr($str0, $i, 1);
                if($moji =~ /[\x80-\xff]/){
                        $moji = substr($str0, $i++, 2);
                }
                $moji_hex = unpack("H*", $moji);
                print "<img src=\"moji/$moji_hex.gif\" alt=\"$moji\">";
        }
        print "<br>\n";
}

3. 上で修正したCGIファイルをアップロードします。

4. 次に掲示板CGIを設置しているディレクトリの下に、moji という名前のディレクトリを作り、そこにフォント画像ファイル241個とスペース画像ファイル1個をアップロードします。以上で「麻由フォント」の設置は終了です。

5. もし掲示板に書き込みをしてもフォント画像が表示されない場合は、そのページのソースを表示させてみてください(ブラウザのメニューの中に「ソース表示」という項目があります)。<img>タグがいっぱい並んでると思います。例えばひらがなの「む」を書き込んだとき、そのタグが <img src="moji/a4e0.gif"> なら、そのページはEUC-JPで記述されていますので、上の<修正後>のコードの中の先頭に#がついている2行の先頭の#を外して(後ろの#は外さないで)保存後アップロードしてみてください。今度はちゃんと表示されると思います。Shift_JISでのタグは <img src="moji/82de.gif"> になります。

6. それでもうまく表示されない場合は、サポート掲示板で質問してみてください。わかる範囲でお答えします。

<ディレクトリ構成例>

public_html
  |
  +--cgi--bbs
        |
        +--bbs_read.cgi [755] 掲示板CGIファイル(配布していません)
        |     :              :
        +--bbs_write.cgi [755] 掲示板CGIファイル(配布していません)
        │
        +--moji フォント画像格納ディレクトリ
           |
           +--20.gif スペース画像ファイル
           +--2d.gif フォント画像ファイル(1)
           +--2e.gif フォント画像ファイル(2)
           |   :        
           |   :        
           +--8393.gif フォント画像ファイル(241)

■ 更新履歴
・Ver1.2 - スペース(空白)を追加(2014/08/14)
・Ver1.1 - ほしマーク(☆)を追加(2013/09/08)
・Ver1.0 - 新規作成(2009/10/06)


BACK