5

概要

カスタム フォント Trade Gothic を使用する iPad アプリケーションで 4 ページの PDF ドキュメントを生成しています。アプリケーションに正しく埋め込まれており、見栄えがします。

ただし、アプリの一部は、PDF を電子メールで送信して残します。この送信されたファイルは、すべてのフォントをデフォルトの sans タイプとして表示し、いくつかのシステムでは、フォント 'RVYPRT+TradeGothicLTStd-Light' が見つからないか作成できませんというエラーを受け取りました。一部の文字は、正しく表示または印刷されない場合があります。

UIKit フレームワークを使用して PDF を生成しています。同じプロセスを使用するチュートリアルを次に示します: http://www.ioslearner.com/generate-pdf-programmatically-iphoneipad/

私の質問

PDF 出力にフォントを埋め込んで、送信後にデフォルト タイプではなくカスタム フォントとして正しくレンダリングされるようにするにはどうすればよいですか。

前もって感謝します!

更新 1:私が見つけた同様の未回答の質問

PDF への IOS 埋め込みフォント

PDFにiOS Quartz埋め込みフォント

更新 2:フォントに関する詳細情報

フォントhttp://store1.adobe.com/cfusion/store/html/index.cfm?store=OLS-US&event=displayFont&code=TRDQ10003000は OpenType フォントであり、ライセンスにより埋め込みが許可されています。

また、使用されるデフォルトのフォントは標準です。

PDF ファイルに特定のフォントが見つからない場合、Adobe Acrobat および Adob​​e Reader は、これらのプログラムに組み込まれている複数のマスター フォントの 1 つを使用して、見つからないフォントを自動的にエミュレートしようとします。この方法では、ドキュメントはデザイナーが望んでいたとおりには表現されませんが、少なくともテキストはリフローしません。これに使用される Multiple Master フォントは、Adobe Serif MMおよびAdob​​e Sans MMです。

ソース: http://www.prepressure.com/pdf/basics/fonts

更新 3: フォントは PDF で参照されていますが、埋め込まれていません。

アプリがフォントを埋め込もうとしているようですが、正しく埋め込まれていません。以下は、[ファイル] -> [ドキュメントのプロパティ] の下にある埋め込みフォントのスクリーンショットです。

ここに画像の説明を入力

私が目にする最初の問題は、フォントが実際には OpenType フォントであるのに Type 1 としてリストされていることです。そして予想通り、「実際のフォント」は Sans MM (埋め込みフォントが見つからない場合に使用されるフォント) です。

更新 4:別の PDF (iPad アプリケーションではなく Adob​​e を使用して生成) では、必要なフォントがサブセットとして埋め込まれています。よくわかりませんが、これにより、プログラムで同じことを実行できるはずだと思います。

ここに画像の説明を入力

4

2 に答える 2

8

あなたが使用している「見栄えのする」フォントであるTradeGothicは、そのライセンスに従って、PDF (またはその他の) ドキュメントへの埋め込みを許可していません。

(なぜフォント デザイナーがそんなことをしたいのかは、私の小さな頭脳を超えています。結局、彼らはそれをドキュメントに使用するライセンスを販売したのですよね? -- そして、なぜ [私が最近直接経験したように] 大企業がデザインするのでしょうか?彼らの企業アイデンティティはそのようなフォントの周りにありましたが、「安すぎ」、埋め込みを許可しないフォントライセンスのみを購入したため、従業員が顧客にくだらない PDF を送信することを余儀なくされ、この話にさらに狂気を追加するだけです...)

2 回目の更新からわかるように、その事実はすでに発見されています。

誤解しているように見えるのは、「ドキュメント プロパティ」のスクリーンショットです。

  1. OpenType フォントにはさまざまな種類があります。(内部で) TrueType シェーピング テクノロジを使用するものもあれば、Type1/PostScript メソッドを使用するものもあります。これが Type1 として宣言されている理由を説明しています。
  2. いいえ、アプリは「フォントを埋め込もうとはしません (ただし、間違って埋め込みます) . まさにその制限を設定するフォントファイルに「埋め込まない」フラグを尊重するようです。
  3. 「フォント 'RVYPRT+TradeGothicLTStd-Light' が見つからないか作成できません。一部の文字が正しく表示または印刷されない可能性があります」という警告を表示する PDF 受信システムに問題はありません。彼らは単に...

    • ...そのフォントがローカルにインストールされていない、または
    • ...Adobe Multiple Master フォント技術を利用できない、または
    • ...Adobe ReaderまたはAcrobatを使用しないでください(MMが含まれています)

私のシンプルなアドバイスは、何年にもわたって顧客の前で何百回も繰り返されてきました。

  1. PDF には常にすべてのフォントを埋め込みます。(そうしない非常に正当な理由があり、その結果を知っている場合を除きます。)
  2. 埋め込みを許可しないフォントを購入 (または使用) しないでください。(また、現在のフォントを確認する方法がわからない場合は、この問題について専門家のアドバイスを受けてください。)

アップデート:

基本的に、「埋め込みフラグ」は、4 つの (重要な) 異なるレベルの制限を表すことができます。(実際には、このフラグは TrueType と OpenTypes のみに適用され、より旧式の PostScript Type1 フォントには適用されません。技術的に言えば、このフラグの名前はfsTypeであり、ビットマスクであり、 OS/2に含まれています。 TrueType および OpenType フォントの表....)

これらのレベルは、タイプ ファウンドリがドキュメント (PDF だけでなく、Word、OpenOffice、またはその他のドキュメント タイプ) へのフォントの埋め込みを許可する場所、時期、および目的を指定します。

  1. 埋め込みは許可されていません。
    フォントがインストールされたシステム上で電子文書を作成し、編集、閲覧することができます。印刷することもできます。Adobe PostScript プリンター ドライバーには、印刷に必要なすべてのフォント要素が PostScript ファイルに含まれています。しかし、それだけです。
  2. プレビューと印刷専用の埋め込み。
    ドキュメントにはフォントが埋め込まれており、ドキュメントは元のフォントで表示できます (ドキュメント受信システムでも)。ただし、それ以外のことはできません (たとえば、ドキュメントの編集はできません)。ドキュメント全体が読み取り専用 + 印刷専用になります。コンテンツをコピーして別のドキュメントに貼り付けることは可能ですが、制限されたフォントを使用 (または転送) することはありません。
  3. 編集可能な埋め込み。
    文書は (受信側システムで) 編集できます。ただし、この操作が正確に成功するかどうかは、完全なフォントが埋め込まれているかサブセットが埋め込まれているかによって異なります。誤ってサブセットに「i」が含まれていない場合は、コメント「ばか」を追加できません。ドキュメントに、自分自身を「愚か者!」に制限する必要があるかもしれません....
  4. インストール可能な組み込み。
    ここには制限はありません。埋め込まれたフォントを抽出して受信システムにインストールすることもできます。(Microsoft は、ドキュメントに埋め込まれたフォントが受信側のマシンにない場合、Word ドキュメントからドキュメントに埋め込まれたフォントを自動的にインストールする時期がありました。)ただし、このオプションは議論の余地あります。または埋め込みドキュメントフォントのインストール。

フォントの「embedding」フラグが示す可能性がある、さらに 2 つの (あまり重要ではない) 制限があります。

  • サブセット化は許可されていません(上記で概説したその他の制限が個別に適用される場合があります。)
  • ビットマップ埋め込みのみ(アウトラインデータの埋め込み不可)

多くの場合、Adobe ソフトウェアは、フォント自体にfsTypeフラグがまったく含まれていない場合、このフォントを印刷 + プレビューのみの埋め込みを許可するフォントとして扱います。

このトピックの詳細については、「サードパーティ開発者向けのフォント埋め込みガイドライン」に関する Adob​​e ホワイトペーパーを参照してください。

于 2012-07-06T22:46:30.857 に答える