PDF を開くと、すべてのページが文字の代わりに空の長方形、小さな正方形、または同じプレースホルダー記号の行でテキストが配置されるべき場所で埋められます。ドキュメントの構造はそのままです。レイアウトは正しく見えます。ただし、文字、数字、句読点はすべて中空のボックスに置き換えられています。これはフォント置換の失敗であり、PDF リーダーで使用できないフォントを使用して PDF がテキストを表示しようとしていることを意味します。テキストデータはまだファイル内にあります。削除または破損していません。問題は完全にレンダリング層にあるため、修正可能です。

フォント置換により空の四角形が生成される原因
原因は症状が示すよりも単純です。
すべての PDF には、テキストの表示方法に関する説明が含まれています。テキストの各部分は、PDF の作成時に埋め込まれた、または PDF が表示されるシステムで利用可能であると予想される特定のフォントを参照します。フォントが埋め込まれている場合、PDF にはフォント データのコピーが含まれており、表示デバイスにどのようなフォントがインストールされているかに関係なく、どの PDF リーダーでもテキストを正しく表示できます。フォントが埋め込まれていない場合、PDF リーダーはローカル システム上で一致するフォントを見つける必要があります。一致するものが存在しない場合、リーダーはフォールバック フォントを置き換えます。ほとんどの場合、これで十分に機能します。テキストは少し異なるものの、読みやすい書体で表示されます。
空の四角形の失敗は、置換メカニズム自体が故障したときに発生します。これはいくつかの理由で発生する可能性があります。 PDF は、オペレーティング システムが認識する標準フォント名と一致しない内部名を使用してフォントを参照している可能性があります。フォントは、標準のフォールバック フォントがマップできない文字エンコーディングを持つカスタムまたは独自の書体である可能性があります。 PDF ファイルには、破損したフォント埋め込みまたは不完全なフォント埋め込みが含まれている可能性があります。フォント データは含まれていましたが、ファイル転送中に破損し、リーダーがそれをデコードできなくなりました。いずれの場合も、リーダーはテキストが特定の位置に表示されるべきであることを知っていますが、レンダリングするグリフ データがないため、欠落文字の汎用シンボル、つまり空の四角形を描画します (ISO、「ISO 32000-2:2020、PDF のフォント処理」、2020)。
PDFを修復してみる
インストールは必要ありません。ブラウザで直接動作します。
フォントが埋め込まれているかどうかを確認する
最初の診断手順は、PDF に埋め込みフォントが含まれているかどうか、また、含まれている場合はそれらが損なわれていないかを判断することです。 Adobe Acrobat など、ドキュメントのプロパティを表示できるビューアで PDF を開きます。 「ファイル」、「プロパティ」、「フォント」に移動します。フォント リストには、ドキュメントで参照されているすべてのフォントと、それぞれが埋め込まれているか埋め込まれたサブセットであるかが表示されます。埋め込まれたフォントは、そのフルネームの後に (Embedded) または (Embedded Subset) を付けて表示されます。非埋め込みフォントにはフォント名のみが表示され、埋め込みインジケーターは表示されません。欠落しているテキストで使用されているフォントが埋め込まれていないものとしてリストされている場合、問題は表示デバイスにそれらのフォントがインストールされていないことです。
フォントが埋め込みとしてリストされているにもかかわらず、テキストが依然として四角形で表示される場合は、埋め込まれたフォント データが破損している可能性があります。これは、PDF が信頼性の低いネットワーク接続を介して転送された場合、障害のあるストレージ デバイスに保存された場合、または使用されているフォント埋め込み形式を完全にはサポートしていないソフトウェアによって処理された場合に発生する可能性があります。フォント データはファイル内に存在しますが、デコードできません。フォントのバイナリ データが破損している場合でも、埋め込み宣言が損なわれていないため、ドキュメント プロパティ パネルにはフォントが埋め込まれたものとして表示される場合があります。
非埋め込みフォントの問題の修復
フォントが一度も埋め込まれていない PDF の場合、修復方法は、表示デバイスに不足しているフォントをインストールするか、フォントが埋め込まれた PDF を再作成することです。フォントのインストールは、どのフォントが不足しているかがわかっていて、それらを合法的に入手できる場合に機能します。これは、不足しているフォントが Helvetica や Times New Roman などの一般的な商用書体で、すでに所有しているものの現在のデバイスにインストールされていない場合に実用的です。見つからないフォントが企業のカスタム書体や高価なライセンスフォントである場合、これはあまり実用的ではありません。
WukongPDF の Repair PDF ツールは、ファイル内のテキスト エンコーディングとフォント参照を分析することで、フォント表示の問題が発生した PDF を再処理できます。広く利用されている非埋め込みフォントの場合、このツールは、テキストの内容とおおよその外観を保持する類似フォントを置き換えることができます。元のテキストを正確に保存する必要がある文書の場合、フォントの埋め込みを有効にしてソース文書から PDF を再作成することが、最も信頼性の高い長期的な解決策です。ほとんどのワード プロセッサやデザイン アプリケーションには、PDF エクスポート ダイアログに [フォントを埋め込む] または [すべての文字を埋め込む] というラベルの設定があります。この設定を有効にすると、フォントの置換が問題になることがなくなります。
破損した埋め込みフォントを含む PDF からのテキストの回復
埋め込みフォントが破損した場合、テキスト データは表示できなくても通常はそのまま残ります。どの文字をどこに表示するかを指定する文字コードは、レンダラーにそれらの文字の描画方法を指示するフォント グリフ データとは別に保存されます。視覚的なレンダリングが失敗した場合でも、PDF からテキスト コンテンツを抽出できます。空に見えるテキスト領域をクリックしてドラッグし、テキスト領域をコピーします。何も表示されていない場合でも、テキストが選択されている場合があります。それをテキストエディタに貼り付けます。読み取り可能なテキストが表示される場合、テキスト データはそのままで、フォントのレンダリングのみが壊れています。
コピー&ペーストで文字化けが発生する場合は、フォントエンコーディングが標準ではない可能性があります。この場合、専用の PDF ツールの PDF テキスト抽出機能を使用します。この機能は、複数のエンコード スキームを使用してテキストをデコードしようとします。抽出されたテキストは、フォントが適切に埋め込まれた新しいドキュメントに配置できます。元の PDF はレイアウトの視覚的な参照として機能し、抽出されたテキストは修復されたバージョンのコンテンツを提供します。この 2 段階のリカバリにより、情報とその表示の両方が保存されます。
作成した PDF のフォントの問題を防ぐ
最も効果的な予防策は、PDF を作成するときに必ずフォントを埋め込むことです。 Microsoft Word では、このオプションは、[ファイル]、[オプション]、[保存] の [このドキュメントを共有するときに忠実度を保持する] にあります。 「ファイルにフォントを埋め込む」にチェックを入れます。 Adobe InDesign および同様のレイアウト アプリケーションでは、PDF エクスポート ダイアログに、埋め込むフォントを指定できるフォント埋め込みセクションが含まれています。サブセットではなく完全な文字セットを埋め込むと、後でドキュメントが編集され、元のサブセット以外の文字が使用された場合でも、それらの文字が正しく表示されます。
他人から受け取った PDF の場合、フォント レンダリングの問題は、永久的な損傷ではなく、修正可能な問題として扱います。テキストはほぼ確実にファイル内に残っています。 PDF のアプローチでは、フォントが欠落しているか壊れているかを診断し、回復可能なテキストを抽出して、欠落しているフォントをインストールするか、埋め込みフォントを使用して文書を再構築します。空の四角形でいっぱいの PDF は不気味に見えますが、通常、それらの四角形の背後にあるコンテンツは無傷であり、正しい手順で復元できます。
非ラテン語および特殊なスクリプトでのフォント置換
フォント置換の失敗は、中国語、日本語、韓国語、アラビア語、キリル文字などの非ラテン文字で特によく発生します。これらの書記体系では、ラテン文字よりもはるかに大きな文字セットが使用されており、それらをサポートするフォントもそれに応じて大きくなるため、PDF 作成時にサブセット化されたり、省略されたりする可能性が高くなります。 CJK フォントを完全にサポートしているシステムで作成された PDF は、それらのフォントがサポートされていないシステムでは空の四角形として表示される場合があります。同じことが、数学、楽譜、言語学で使用される特殊な文字セットにも当てはまります。これらのスクリプトを使用するドキュメントには、クロスプラットフォームの互換性を確保するために、フォントがサブセットではなく常に完全に埋め込まれている必要があります。
非ラテン語フォントが欠落している PDF を受け取った場合、多くの場合、特定のフォントをインストールすることが唯一の信頼できる修正方法です。ラテン文字用に設計されたフォント置換アルゴリズムは、意味のある置換を行うにはグリフの形状が違いすぎるため、非ラテン文字セットではパフォーマンスが低下します。元の文書で使用されている正確なフォントを特定し、正規のソースから取得して表示システムにインストールすると、文書が意図した外観に復元されます。 PDF フォント エコシステムは Unicode を完全にサポートしていますが、そのサポートはレンダラで使用できるフォントに依存します。フォントが欠落していると、複雑な書記体系では、どんなに賢明な代替を行っても完全には埋めることができないギャップが生じます。
空の四角形の問題は、ユーザーが遭遇する可能性のある PDF の問題の中で最も視覚的に憂慮すべき問題の 1 つですが、最も一貫して修正可能な問題の 1 つでもあります。ファイルをまったく開けない構造破損とは異なり、フォント レンダリングの失敗は、ファイル構造が損なわれておらず、コンテンツが存在していることを意味します。レンダラーは、そこにあるべきであると認識しているものを単純に描画することができません。問題に系統的に取り組み、埋め込みステータスをチェックし、欠落しているフォントを特定し、テキスト コンテンツを復元することで、壊れたように見える PDF が、完全に使用可能で読みやすい PDF に変わります。破壊の外観は、レンダリング レイヤによって作成された幻想です。その下のデータは、適切な診断手順と修復ツールを使用すれば、ほとんどの場合回復可能です。
テキストがあるはずの空の四角形は、初めて遭遇したときは驚くものです。背後にあるフォント置換メカニズムを理解すると、明確な診断パスと信頼性の高い修正により、それらは管理可能な技術的問題になります。パニックは薄れ、問題解決が始まります。
PDFを修復してみる
インストールは必要ありません。ブラウザで直接動作します。
