スポンサーサイト

  • このエントリーを含むはてなブックマーク
  • Yahoo!ブックマークに登録
    上記の広告は1ヶ月以上更新のないブログに表示されています。
    新しい記事を書く事で広告が消せます。

    グラフ、PDF出力の日本語調整

  • このエントリーを含むはてなブックマーク
  • Yahoo!ブックマークに登録
    グラフに関しては、以前も触れていますが、
    config-default.php内で

    $chartfontfile='ipam.ttf';
    というように指定して、limesurvey内のfontsディレクトリに該当ファイルを
    配置します。
    上記例は、IPAの明朝フォントです。
    フォントを変更した場合、直前に実施したキャッシュがlimesurvey/tmp/に
    pngファイルで残っている場合がありますので、pngファイルを消してから
    反映を確認してください。


    PDFの出力に関しては、tcpdfが関係してきます。
    不勉強だったのですが、今のtcpdfは、標準の日本語フォントとして、
    「小塚ゴシックPro M」等が含まれているということで、これを利用します。
    こちらを参照させて頂きました。

    変更点ですが、まずデフォルトの定義を変更します。
    config-default.php
    $pdfdefaultfont = 'unifont';
    上記行を下記の様に、変更します、値の意味はさらに下を参照してください。
    unifontでも一部日本語を表示できますが、非常に汚く、一部文字化けして
    しまうため、変更することをおすすめします。

    $pdfdefaultfont = 'kozgopromedium';

    この設定だけでも、PDF出力の本文内は適用されますが、
    ヘッダ部分など細かな箇所に文字化けが残りますので、
    tcpdfの既定値を変えていきます。

    limesurvey/admin/classes/tcpdf/config/tcpdf_config.php

    小塚ゴシックを定義します。
    PDF_FONT_NAME_MAIN、PDF_FONT_NAME_DATAを小塚ゴシックの
    kozgopromediumという名前で下記の様に定義します。

    define ('PDF_FONT_NAME_MAIN', 'kozgopromedium');
    define ('PDF_FONT_NAME_DATA', 'kozgopromedium'); 

    さらに、
    limesurvey/admin/classes/tcpdf/mypdf.php
    内の12行目あたり、

    $this->SetAutoPageBreak(true,10);
    $this->AliasNbPages();

    の次に

    $this->FontFamily = 'kozgopromedium';
    を追記します。

    以上で一通りの日本語適用が完了します。

    小塚ゴシックの部分は、先のIPAフォントを適用することも考えましたが、
    tcpdfで利用するためには、変換が必要で改変した際の同梱には問題が考え
    られますので、小塚ゴシック指定としました。
    スポンサーサイト

    theme : Windows 全般
    genre : コンピュータ

    comment

    Secret

    ご案内
    google検索
    カスタム検索
    カテゴリ
    最新記事
    Amazon
    カテゴリー&RSS
    RSS新着情報

    plugin by F.B

    検索フォーム
    最近のコメント(コンパクト)
    データ取得中...
    リンク
    フリーエリア
    RSSリンクの表示
    カレンダー
    09 | 2017/10 | 11
    1 2 3 4 5 6 7
    8 9 10 11 12 13 14
    15 16 17 18 19 20 21
    22 23 24 25 26 27 28
    29 30 31 - - - -
    ブックマーク
    Yahoo!ブックマークに登録
  • | このエントリーを含むはてなブックマーク
  • 月別アーカイブ
    最新トラックバック
    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。