2013-03-07 19 views
7

tcpdfを使用してPDFを動的に作成し、そのフォントをPDFに埋め込むWebサイトを作成しました。ユーザーは、Arial、Verdanaなどの標準フォントの範囲から選択できます。次に、システムは自分のサーバーから直接ttfフォントを選択し、下のコードを使用して埋め込みます。このフォントのテキストは、ほとんどのPDFビューアで正常に表示されますが、iPad/iPhone'sビューアで表示されませんでした。私はArial.ttfの新しい(無作為な)バージョンをテストとしてダウンロードしました(ファイルの違いはわかりませんが、今は上手く表示されています)。PDFがiPadで表示されているときにTCPDF埋め込みttfフォントが表示されない

私はいくつかのフォントでこれを行う必要がありますが、暗いところではフォントの中に何が埋め込まれないのか分からないので、誰も知っているわけではありません。誰かがttfフォントで何が表示されないのか知っていますか? Acrobatドキュメントプロパティ?

おかげ

$fontname = $pdf->addTTFfont('/tcpdf/fonts/custom/'.$ttfFile.'.ttf', 'TrueTypeUnicode', '', 32); 

//フォントを使用

$pdf->SetFont($fontname, '', $fontPoints, '', 'false'); 
+0

あなたは何を意味しますか"表示しない" - テキストは実際に完全にそこになかった?そして、それらのPDFの1つを見ることができるように共有することはできますか? –

+0

こんにちは、お返事いただきありがとうございます。フォントはchrome pdf readerとSafariでは表示されましたが、iPhone/iPadの標準ビューアでは表示されませんでした。ここでは、フォントの選択肢の例を紹介します。ほとんどの場合、すべてのユーザーが表示しますが、iPhoneには表示されないものがあります。 Acrobatによれば、それらは明らかに「埋め込まれたサブセット」であり、どんなアイディアも非常に役立つでしょう。 http://s316279697.websitehome.co.uk/joe/banner790.pdf – user1916116

+0

私はあなたのファイルをcallas pdfToolboxプリフライト(警告、私はこの会社に所属しています)経由で走らせました。まず、あなたのファイルには、明らかにページで使われていない(埋め込まれていない)2つのHelveticaフォントも含まれています。あなたのファイルはまた、使用されるPalatinoフォントのエラーの数が戻ってきます。これは表示されないフォントですか? –

答えて

2

$サブセットのパラメータが間違っています。あなたは '偽'(引用符で)に設定します。ブール値trueでなければなりません。

<?php 
      ... 
      // Wrong 
      $pdf->SetFont($fontname, '', $fontPoints, '', 'false'); 

      // Right 
      $pdf->SetFont($fontname, '', $fontPoints, '', true); 
      ... 
    ?> 

なぜ機能しますか?

サブセットだけでなく、フォント全体を埋め込むためです。 トリックは、$ pdf-> SetFont()メソッドのパラメータ$ subsetをtrueに設定することです。

http://www.tcpdf.org/doc/code/classTCPDF.html#a471562985997be1573d387f0aeae6964

PDFは

のiPad(IOS 7)、iPhone(IOS 7)、Windows 7の、MacOSXの10.9で取り組んでいます。 MAC 10.9、PHPの5.3.x上

PDFの作成のための私の環境

のApache 2、TCPDFのv6.0.078

ファイル

Example PDF and a PHP Script to create it

+1

実際には、フォント全体をドキュメントに埋め込み、El Capital Preview、iOSなどに正しく表示させるには、$サブセットをfalse(ブール値false、引用符ではない)に設定する必要があります。 –

関連する問題