PDF をフラット化すると、すべての注釈、フォーム フィールド、およびレイヤー化されたコンテンツが 1 つの静的画像レイヤーにマージされます。フラット化されると、フラット化前に存在していた元のテキスト レイヤーはなくなります。かつて選択、検索、抽出可能だったテキスト文字は、平坦化された画像ではピクセルになります。フラット化されたドキュメントのPDF Repairは、フラット化された出力から元のテキスト レイヤーを復元できるかどうかを尋ねます。
簡単に言うと、PDF がテキスト レイヤーを保持してフラット化されたか、保持されずにフラット化されたかによって決まります。一部のフラット化操作では、フラット化された画像の背後にある元のテキストが非表示のコンテンツとして保存されます。他の平坦化操作ではテキストが完全に破棄され、レンダリングされたイメージに置き換えられます。前者の場合は回復可能ですが、後者の場合は回復できません。
WukongPDF の PDF フォーマット 回復ツールは、フラット化された PDF ドキュメントから保存されたテキスト レイヤーを検出して抽出できます。

PDF フラット化の仕組みと削除内容
フラット化により、PDF ページのすべての表示レイヤーが 1 つのレンダリングされたイメージに結合されます。ハイライト、付箋、描画マークアップなどの注釈は、ページのコンテンツにマージされます。フォームフィールドは、インタラクティブな要素から、入力された値の静的な視覚表現に変換されます。透明効果は不透明ピクセルに解決されます。結果として、元のページと同じように見えますが、インタラクティブな構造や階層構造を持たないページが作成されます。
実際には、平坦化プロセスでは、平坦化された画像の背後にある元のテキスト レイヤが保持される場合と保持されない場合があります。 Acrobat Pro のフラットナープレビューまたは特定の設定を使用したプリフライトツールを使用してフラット化を実行すると、元のテキストが非表示のレイヤーとして保持される場合があります。 Print to PDF またはサードパーティ ツールを通じてフラット化が実行される場合、通常、テキスト レイヤーは完全に破棄されます。
簡単なテストで、テキストが保存されたかどうかを判断します。フラット化された PDF を開いて、ページ上のテキストを選択してみます。テキストを選択してコピーできる場合、テキスト レイヤーは平坦化されても生き残ったことになります。テキストをクリックしても何も選択されない場合、またはページ全体が画像として選択された場合、テキストレイヤーは破棄され、見た目だけが残ります。
PDFを修復してみる
インストールは必要ありません。ブラウザで直接動作します。
方法 1: 平坦化された画像の背後にある隠しテキスト レイヤーを確認する
Acrobat Pro で、フラット化された PDF を開き、[ツール]、[コンテンツ編集]、[テキストと画像の編集] に移動します。表示されているテキスト領域をクリックします。 Acrobat がテキストの周囲に境界ボックスを表示して編集できる場合、平坦化された画像の背後にテキストレイヤーが存在します。通常の表示では選択可能なテキストとして表示されない場合でも、テキストはファイル データ内に存在します。
テキストが存在する場合は、Acrobat Pro の PDF をテキストにエクスポート機能を使用して抽出します。ビジュアル ページがフラット化されて表示されている場合でも、抽出されたテキストには元のコンテンツが含まれている場合があります。抽出したテキストをコピーし、元のコンテンツのサンプルと比較します。テキストが一致する場合、元のテキスト レイヤーがフラット化されたファイルから正常に復元されました。
これを広く見ると、実際のシナリオでは、Acrobat が編集可能なテキストを見つけられない場合、テキストレイヤーはフラット化中に破棄されます。ページ上のビジュアル テキストは、文字コードではなく、フラット化された画像内のピクセルで構成されます。抽出するテキスト データがないため、テキスト抽出による回復はできません。
方法 2: OCR を使用して失われたテキスト レイヤーを再作成する
平坦化中に元のテキスト レイヤーが破棄された場合、OCR はそれを再作成するためのパスを提供します。 Acrobat Pro のテキスト認識機能を使用して、フラット化された PDF で OCR を実行します。 OCR エンジンは各ページのピクセル イメージを分析し、文字の形状を識別し、認識された文字を含む新しいテキスト レイヤーを作成します。
これを広く考えると、実際には、OCR で再作成されたテキスト レイヤーは元のテキストではありません。 OCR では、特に小さなテキスト、珍しいフォント、または複雑な背景上のテキストで認識エラーが発生します。再作成されたテキストは、きれいで標準的な文書の場合は約 95 ~ 99 パーセントの精度になりますが、難しいタイポグラフィーやレイアウトの文書の場合は精度が低くなります。
OCR 後、認識されたテキストを、元のコンテンツの既知のサンプル (存在する場合) と比較します。 OCR エラーを手動で修正するか、再作成されたテキスト レイヤーをオリジナルの近似として受け入れます。 OCR 出力は検索やテキスト抽出に使用できますが、法律、財務、または規制の目的でテキストに依存する前に検証が必要なエラーが含まれる場合があります。
PDF ファイル構造内のテキストのチェック
フラット化された PDF にテキスト データが存在するかどうかを最終的に確認するには、生のファイル構造を調べます。 VS Code や Notepad++ などのバイナリ ファイルを処理できるテキスト エディタで PDF を開きます。元のドキュメントの内容から認識可能なテキスト文字列を検索します。ファイル データ内にテキスト文字列が見つかった場合、PDF リーダー インターフェイスからアクセスできない場合でも、テキスト レイヤーは存在します。
このアプローチでは、PDF の内部構造についてある程度の知識が必要です。 PDF 内のテキストは、テキスト オブジェクトの始まりと終わりを示す BT および ET マーカー内に保存されます。これらのマーカーの間には、位置指定コマンドとともに文字コードがリストされます。認識可能なテキストを含む BT マーカーと ET マーカーが見つかると、テキスト データが平坦化されても生き残ったことがわかります。
実際の観点から見ると、実際のシナリオでは、ファイル データ内にテキスト文字列が見つからない場合、フラット化操作によってコンテンツが完全にラスタライズされます。ページは画像であり、回復可能なテキスト情報は含まれていません。 OCR は、テキスト レイヤーを作成するために使用できる唯一の方法です。
今後のフラット化操作でのテキストレイヤーの損失の防止
テキスト レイヤーを保持する必要がある PDF をフラット化する場合は、非表示のテキストを保持する設定を使用します。 Acrobat Pro のフラットナー プレビュー ツールには、オーバープリントとスポット カラーの情報を保持するチェックボックスが含まれており、間接的にテキスト データの保持に役立ちます。 Preflight ツールは、テキストを明示的に保持するフラット化フィックスアップを提供します。
最も安全な方法は、フラット化する前に PDF のフラット化されていないコピーを保存することです。フラット化されていないコピーには、すべてのインタラクティブな要素、注釈、およびテキスト レイヤーが保持されます。フラット化バージョンを配布します。フラット化されていないオリジナルをアーカイブします。リカバリが必要になった場合、オリジナルは完全なソース データを提供します。
より広い視野で、ドキュメント ワークフローで重要なドキュメントについては、元のドキュメントにフラット化設定を適用する前に、コピーでフラット化設定をテストします。平坦化後もテキストが回復可能であることを確認します。回復に失敗した場合は設定を調整してください。テスト手順によりワークフローに時間がかかり、永久的なテキストの損失が防止されます。
プリフライトを使用して隠しテキスト レイヤーを検出および抽出する
Acrobat Pro Preflight ツールには、PDF コンテンツ構造を分析するために特別に設計されたプロファイルが含まれています。インベントリ レポートには、通常の表示では表示されないものも含め、ファイル内に存在するすべてのテキスト オブジェクトがリストされます。フラット化された PDF でこのレポートを実行すると、テキスト データがフラット化プロセスを経ても生き残ったかどうかがわかります。
プリフライト レポートでテキスト オブジェクトが識別された場合は、[すべてのテキストをエクスポート] フィックスアップを使用して、テキスト オブジェクトを別のファイルに抽出します。抽出されたテキストは、表示されているページ コンテンツと比較して、元のテキストがどの程度保存されているか、およびそれが正確で完全であるかどうかを判断できます。
部分的にフラット化された PDF からのテキストの回復
一部のフラット化操作は、特定のページ要素のみに影響を与え、他の要素はそのまま残します。フォームフィールドはフラット化されますが、本文テキストは選択可能な文字のままになります。注釈は、基礎となるページのテキストが残されたままフラット化される場合があります。各要素タイプを個別に調べて、何がフラット化され、何が保存されたかを判断します。
広い角度から、ドキュメント ワークフローで、部分的にフラット化されたドキュメントの場合、フラット化されていない部分から残っているテキストを抽出し、それをフラット化された部分からの OCR 出力と結合します。ハイブリッド アプローチでは、利用可能な場合は元のテキストを使用し、元のテキストが失われた場合は OCR で再構築されたテキストを使用することで、テキストの回復を最大限に高めます。
回復が不可能であることをどのような場合に受け入れるか
ファイル構造にテキストデータが存在しない場合、Acrobat が編集可能なテキストを見つけられない場合、および OCR が許容できないほど不正確な結果を生成した場合、元のテキストレイヤーを復元することはできません。この結論を受け入れ、回復の試みにより多くの時間を費やすのではなく、残っているものを保存することに移りましょう。
回復の試みとその結果を文書化します。使用したツール、試した方法、および到達した結論に注目してください。このドキュメントは、より優れた回復ツールにアクセスできる可能性があり、以前に何が試行されたかを理解する必要がある将来のドキュメント管理者に役立ちます。
フラット化されたドキュメントの長期アーカイブ戦略
フラット化 PDF はインタラクティブな依存関係を削除するため、アーカイブ目的に特化して作成されることがよくあります。フラット化されたドキュメントをアーカイブする場合は、可能な限り、フラット化されていないオリジナルをフラット化されたバージョンと並べて保存してください。オリジナルは完全な文書構造を保持します。フラット化バージョンは、安定したアーカイブ形式を提供します。
フラット化バージョンのみが存在するドキュメントの場合は、OCR を実行してテキスト レイヤーを作成し、PDF に埋め込みます。 OCR テキストは完璧ではないかもしれませんが、他の方法では不可能だった将来の検索やテキスト抽出が可能になります。 OCR レイヤーは、平坦化された画像と将来のドキュメント分析ニーズの間の橋渡しとなります。
ドキュメントコレクションの自動平坦化検出
大規模なドキュメント コレクションを管理する組織は、フラット化された PDF の自動検出の恩恵を受けます。各 PDF を開き、選択可能なテキストの存在を確認し、テキストが存在しないファイルにフラグを付けるスクリプトは、OCR 処理が必要なドキュメントを識別します。自動スキャンにより、フラット化されたドキュメントが検索可能なテキスト レイヤーなしでアーカイブにサイレントに入力されるのを防ぎます。
フラット化検出をドキュメント取り込みワークフローに統合します。新しい PDF がシステムに入力されたら、テキストの存在を確認します。テキストが存在しない場合は、文書がアーカイブに到達する前に、文書を OCR 処理キューにルーティングします。自動検出と修正により、アーカイブされたすべての文書が確実に検索可能になります。
PDFを修復してみる
インストールは必要ありません。ブラウザで直接動作します。
