Sunday, July 14, 2013

OpenERPで帳票をPDF出力する際の文字化けへの対応

OpenERPを初めて試される際、日本語帳票のPDF出力で躓かれる方も多いのではないかと思われますので、情報共有です。

OpenERPではPDF帳票出力の際に、取引先マスタに設定してある言語を適用するのですが、標準のままでは日本語の文字が矩形に文字化けしてしまいます。


こちら、OpenERPで使用している標準フォントが日本語をカバーしていないための問題です。

中国語でも同様の問題があるのですが、日本に先行してOpenERPの導入が進められている中国ではこの問題に対しいくつか対策がリリースされています。


そのうちの一つ、Shine IT社の oecn_base_fonts というモジュールのご紹介です。

通常の要領でモジュールインストールします。インストールの際、下図のようにマッピングの設定画面が開きますので、ここで日本語対応フォントを指定します。設定はこれだけです。


インストールすると、Settings -> Configuration -> General Settings にRML Report Fontという項目が登場します。ここから設定内容の変更が可能です。


この結果、無事日本語が出力できるようになります。簡単ですね。(下図は上の文字化け例とは無関係の場所です)



Elico Corp社のモジュール l10n_cn_fonts も試したのですが、円サイン「¥」の表示がうまくいきませんでした。このモジュールで使われている Droid Sans Fallback というフォントはCJKサポートしているものの対応していないUnicodeサインがあるということのようです。(このあたり私の勘違いかも知れませんので間違いがありましたらご指摘を)


フォントの問題点については、OpenERP s.a.社に伝えていまして、今年中に何らかの対応をリリースするとの回答をもらっています。余計な手間はかけずに済むに越したことはないので、今後の改善に期待ですね。