1318911344 PHPのimagettftextで質問です。

TrueTypeFont"Webdings"で"~"に割り当てられた雷マークをimagettftextを用いた以下のソースで画像表示したいのですが、なぜか文字化けして作成されてしまいます(添付画像)。
__________________
<?php
$txt='~';
$bg=array(255,255,255);}
$color=array(0,0,0);}
header('Content-type: image/png');
$img=imagecreate(16,15);
$white=imagecolorallocate($img,$bg[0],$bg[1],$bg[2]);
$color=imagecolorallocate($img,$color[0],$color[1],$color[2]);
$fnt='./Webdings.ttf';
imagettftext($img,12,0,0,13,$color,$fnt,$txt);
imagepng($img);
?>
__________________
Tahomaなど、他のフォントでは正常に機能しているのですが、WebdingsのほかWingdingsでも同様の現象が生じてしまい、原因と対応がわからず困っています。
解決方法をご存知のかたがいらしたら、ご教授をお願いします。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/10/18 13:15:44
  • 終了:2011/10/18 21:58:29

ベストアンサー

id:pacochi No.1

ぱこち回答回数246ベストアンサー獲得回数1112011/10/18 16:10:47

以前似たような経験をしました。

その時は、フォントファイルを FontForge などで開いて TrueType で保存し直すと、文字化けしなくなりました。


ただ、Webdings がそういう変換を許可しているライセンスなのかどうか分からなかったので (ライセンス文をきちっと訳せる自信がありませんでした)、この方法を実際に使えるかどうかは分かりません。

参考までに、Webdings.ttf のプロパティに書かれているライセンスの説明は、以下の通りでした。

You may use this font as permitted by the EULA for the product in which this font is included to display and print content. You may only (i) embed this font in content as permitted by the embedding restrictions included in this font; and (ii) temporarily download this font to a printer or other output device to help print content.

以下のページにも Webdings についての情報が載っています。

http://www.microsoft.com/typography/fonts/font.aspx?FMID=1697

  • id:kka
    ご回答ありがとうございます。
    技術的にはフォントの保存方法になんらかのポイントがあり、またそれとは別にライセンスの問題があるかもしれないと言うことですね。FontForgeなどのフリーフォント製作ツールがないため(Mac用のフリーツール)実際にフォントデータを保存し直すことは出来ないのですが、MacOS付属のフォント閲覧アプリFontBook上で、Webdings/Wingdingsのテキスト入力によるカスタム(入力したキーに対応するフォントのデータ)表示を試したところ、文字化けが発生しましたので、そういうことなのだと思います。
    ライセンス的な問題に関しても確かに不安がありますので、とりあえずの対策としてはimagettftextの使用を諦め、別途画像データをフォントに頼らず作成して呼び出すことにしたいと思います。
  • id:pacochi
    お力になれずすみません。
    それと、ちょっと誤解を生む書き方をしてしまったので、補足します。
    >FontForgeなどのフリーフォント製作ツールがないため(Mac用のフリーツール)
    リンクは Windows (で簡単に動作する) 版にしてしまいましたが、FontForge 自体は Mac、Linux、Windows のいずれでも動作します。
    http://fontforge.sourceforge.net/ja/
    http://fontforge.sourceforge.net/ja/mac-install.html
    Mac にインストールしたことは無いので詳しいことは分かりませんが、"FontForge Mac" で検索するとインストールにまつわる情報が結構出てくるようです。
  • id:kka
    ご丁寧にありがとうございます。
    FrontForge、Macでも動くんですね。
    早速、再保存を試してみたところimagettftextで期待通りの動作をしました。
    今回の質問については無事解決です。

    (ライセンス的な問題が残っているので、このまま利用するかどうかは
     再検討したいと思います)

    ありがとうございました。
  • id:kka
    訂正、正確には

    「ライセンス的な問題が残っているかもしれない。」

    でした。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません