• 締切済み

TCPDFの多言語について

TCPDFの多言語の出力につてご質問です。 フォームのテキストエリアの内容をPDFとして出力したいのですが、テキストエリアに日本語、英語、タイ語、ベトナム語が入る想定です。 下記は試したソース・結果になります。どのようにすれば良いのか解らずこまっております。 解る方いましたらご回答お願い致します。 ■ソース1 $pdf->SetFont('ipag'); $pdf->MultiCell(100,100,'テストTestทดสอบkiểm tra',0,'L',0,1,0,0,false,0,true,false,false); ■結果1 テストTest◩◩◩◩ki◩mtra ■ソース2 $pdf->SetFont('dejavusans'); $pdf->MultiCell(100,100,'テストTestทดสอบkiểm tra',0,'L',0,1,0,0,false,0,true,false,false); ■結果2 ◩◩◩Test◩◩◩◩kiểm tra ■ソース3 $pdf->SetFont('thsarabun'); $pdf->MultiCell(100,100,'テストTestทดสอบkiểm tra',0,'L',0,1,0,0,false,0,true,false,false); ■結果3 ◩◩◩Testทดสอบkiểmtra

みんなの回答

  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.2

・まず、言語検出 ・次に その言語に対応したフォントを適用 → $pdf->SetFont('[対応したフォント]'); と、単純に思ったのですが、正直どうなんでしょうねぇ。。

bgbwq712
質問者

お礼

回答ありがとうございます、遅くなり申し訳ありません。 上記の内容ですが、テキストエリアには複数の言語が入る可能性があるため。 setFont->('フォント') setText(POSTで受けった内容') としてsetFontした言語の内容は表示されますが、その他の言語が文字化け致します。 やはり難しいですよね。。。

  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.1

深く考えずに回答してますけど、フォントが対応していない気がするので、言語を検出してフォント切り替えれば良いのではなかろうかと思ったり。 Google 翻訳 API で言語検出できるらしいですけど、有料になっちゃってるっぽいですね。 ま、選択肢の一つとして。という感じで。 http://kenz0.s201.xrea.com/weblog/2009/05/language_detection_googleapi.html http://techbooster.org/android/14280/ https://developers.google.com/translate/

bgbwq712
質問者

お礼

ご回答ありがとうございます。 少し考えてみたのですが具体的な記述が思いうかびません。 複数言語が混在する中で仮に言語を検出?できた場合の具体的なソースとはどのようになりますか?

関連するQ&A