Re: 新IPAフォントのPDF埋め込みについて(宣伝?+質問)

名前: ZR
日時: 2007-10-05 21:15:11
IPアドレス: 124.87.233.*

>>49707 これはユーザの指定と無関係に起こっている現象なので、フォント そのものを改変しないと対処できないでしょう。 # 改変物の個人的な仕様は OK のようです。 FontForge で一度読み込んで保存するという作業をすると、この 現象は起こらなくなりましたが…。 問題があるのは、フォントではなく dvipdfmx の方ですので、 dvipdfmx を直してもらうのが本来の解決策かもしれません。 ---- [参考] TTF/OTF の規格では、フォントの「PS フォント名」は言語に依ら ない唯一固有の名前で、それは 'name' テーブルの (PlatformID, EncodingID, LanguageID, NameID) = (3, 1, 0x409, 6) [Microsoft, Unicode, English] または (1, 0, 0, 6) [Macintosh, MacRoman, English] のエントリに記される(両方ある場合はそれらは同一である)と定め られています。文字列の符号化方法は前者(Microsoft)なら UTF16BE、 # Little Endian でなくて Big Endian でした。 # 後に書いたバイト列を見れば明らかだったが…。 後者(Macintosh)なら MacRoman (ASCII の superset)ですが、この 文字列は PostScript の有効な識別子でなければならないので、 含まれる文字は ASCII (の subset) に限られます。 dvipdfmx で PS フォント名を取得する処理は tt_get_ps_name 関数 で行われていますが、そこでは Microsoft のバイト列(UTF16BE)を 得たときにそれをデコードせずにそのまま文字列として使って います。これは明らかに不適当で、この為に当該の警告が発生して いるようです。 含まれるのは ASCII 文字だけなので、UTF16 中の null byte を 除けばいつでも正しい結果になるのですが。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)