<input type="submit" value="生成">
</form>
<hr>
-部品データは1部品=1行で、「部品名、スペース、部品データ」の順に記述します。<br>実際に生成されるコードポイントは、部品名が「単独の文字」「[単独の文字]」「コードポイント16進数(頭にUu,+-を付けても可)」のいずれかとなります。<br>
+部品データは1部品=1行で、「部品名、スペース、部品データ」の順に記述します。<br>
+実際に生成されるコードポイントは、部品名が「単独の文字」「[単独の文字]」「コードポイント16進数(頭にUu,+-を付けても可)」のいずれかとなります。<br>
+「:」の含まれない行はコメントとして、無視されます。
<ul>
<li>(例)</li>
<li>30A8</li>
<dt>繁体字中国語フォント</dt><dd>U+592E「央」を含めてください</dd>
<dt>韓国語フォント</dt><dd>U+3131「ハングル字母1番目」を含めてください</dd>
</dl>
+<br>
+Webサーバの制約により生成に6分以上かかる場合は失敗します。(現在グリフ数4000強までは生成が可能です)
<hr>
<div align="right">fonts.jp</div>
</body>
use CGI;
$form = new CGI;
+$FONTFORGE = "/usr/local/bin/fontforge";
$PERL = "/usr/bin/perl";
$RM = "/bin/rm";
$LICENSE = 'Created by KAGE system. (http://fonts.jp/)';
Content-Disposition: attachment; filename = $fontname_en.ttf
EOT
- open FH, "<:utf8", "$TEMPDIR/$TEMP.ttf";
+ binmode STDOUT => ":raw";
+ #open FH, "<:utf8", "$TEMPDIR/$TEMP.ttf";
+ open FH, "<$TEMPDIR/$TEMP.ttf";
while(1){
$readed = read FH, $fdata, 1024;
- utf8::decode($fdata);
+ #utf8::decode($fdata);
print $fdata;
if($readed <= 0){
last;
}
@temp = split(/\r\n|\r|\n/, $temp);
foreach(@temp){
- @temp2 = split(/ +|\t/, $_);
- $buhin{$temp2[0]} = $temp2[1];
+ if($_ =~ m/:/){
+ @temp2 = split(/ |\t/, $_);
+ $buhin{$temp2[0]} = $temp2[1];
+ }
}
# parse target codepoint