BindImageAsset 0.3

  • 投稿日:
  • by
  • カテゴリ:

日本語のファイル名

イメージ画像ファイルに、日本語が混ざっているとおかしなコトになることがわかりました。HTMLには、%HH形式にエンコードされたURLがかき込まれるため、これをBindImageAssetが取り出して、その、エンコードされたURLのまま、Assetを作ろうとしてしまい、目的のファイルにアクセス出来なくなってしまっていました。

$f =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
$f = Encode::decode('utf8', $f);

以上のように、ファイル名を、強制的にデコードしてから獲得するように修正しました。URLをデコードしただけでは不十分で、UTF8のデコードをしてやる必要があります。面倒くさい。

修正版は、こちらからダウンロード出来ます。