Others

別のオペレーティング システムで PDF を開くと文字化けが表示されるのはなぜですか

Windows ラップトップで PDF を開くと、すべてが完璧に見えます。この文書を Mac を使用している同僚に送信すると、文書中にランダムな記号、四角いボックス、または疑問符が散在しているのが表示されます。 Linux マシンでは、同じファイルのテキストがあるべき場所に空白が表示される場合があります。このイライラする経験は、ほとんどの人が思っている以上に頻繁に発生しており、ほとんどの場合、さまざまなオペレーティング システムが PDF ファイル内に埋め込まれたフォントをどのように処理するかが原因で発生します。

中心的な問題は単純です。PDF はどこでも同じように見えるように設計されていますが、その約束は、ファイルに埋め込まれているフォントか、PDF を開くシステムで利用可能なフォントに依存します。 PDF が作成者のコンピュータにインストールされているフォントに依存しているものの、ファイル自体にそれらのフォントが含まれていない場合、同じフォントを備えていないデバイスでは別のフォントが代替されます。別のオペレーティング システムでは、一般的なフォントであっても名前やバージョンが異なるため、その置換により文字化けした判読不能な出力が生成される可能性があります。

Why Does a PDF Display Garbled Characters When Opened on a Different Operating System

最も一般的な原因: フォントが見つからないか、埋め込まれていない

Word 文書、Google ドキュメント、または InDesign などのデザイン アプリケーションから PDF を作成すると、ソフトウェアはフォントを PDF に直接埋め込むか、単に参照するかを決定します。フォントの埋め込みとは、実際のフォント データが PDF ファイル内にパッケージ化されることを意味します。フォント参照は、使用されたフォントを記録するだけであり、読み取りデバイスにそのフォントがインストールされていることを期待します。

Windows 上の Microsoft Word は通常、Calibri、Cambria、Times New Roman などのフォントを使用します。 PDF 作成者がファイル サイズを小さくするためにフォントを埋め込まないことを選択した場合、PDF には実際の文字の形状ではなく、フォント名のみが保存されます。 Mac でそのファイルを開くと Calibri が検索されますが、異なるバージョンの Calibri が見つかるか、一致するものがまったく見つかりません。その後、Mac PDF ビューアは代替フォントに戻り、元のフォントと代替フォントの間の文字マッピングが完全に一致することはほとんどありません。

PDF Association による 2024 年の分析では、フォント関連の問題が、プラットフォーム全体にわたるすべての PDF レンダリングの問題の約 40% を占めていることがわかりました (PDF Association、「PDF レンダリング エラー調査」、2024 年)。フォント置換の失敗は、キリル文字、CJK (中国語、日本語、韓国語)、アラビア語、ヘブライ語などの非ラテン文字で特によく発生し、置換フォントに必要な文字セットが完全に欠けている可能性があります。

これは、カスタム フォントまたはライセンス フォントを使用するドキュメントで PDF フォント の問題が発生する可能性がある理由でもあります。デザイン アプリケーションでは、無料で配布されていないプレミアム フォントが使用されることがよくあります。デザイナーがそれらを埋め込むのを忘れた場合、またはフォント ライセンスで埋め込みが禁止されている場合、その特定のフォントがインストールされていない状態で PDF を開くと、文字化けしたテキストが表示されます。

同じドキュメントを別のオペレーティング システムで表示すると、まったく違って見えることがあります。 PDF が作成された Windows マシンでは正しくレンダリングされた PDF でも、Mac または Linux システムでは豆腐 (フォントに特定の文字が欠けているときに表示される空の長方形のボックスのニックネーム) が表示される場合があります。この不一致は、PDF の作成段階で完全に防ぐことができます。

WukongPDF

PDFを修復してみる

インストールは必要ありません。ブラウザで直接動作します。

始める →

Windows、macOS、Linux 間での文字エンコーディングの競合

ブラウザベースの PDF ツールを使用すると、ソフトウェアのインストールや更新が不要になることも意味します。このツールはリモート サーバー上で実行され、ブラウザを通じて結果が提供されるため、ダウンロードせずに常に最新バージョンにアクセスできます。これは、プログラムをインストールするための管理者権限を持たないデバイスでファイルを迅速に処理する必要がある場合に特に便利です。

フォントの欠落以外に、プラットフォーム間で PDF の表示が異なる 2 番目の主な理由は文字エンコーディングです。文字エンコーディングは、数値コードを特定の文字の形状にマッピングするシステムです。 PDF が作成されると、ソース アプリケーションで使用されるエンコーディングに基づいて、ドキュメント内の各文字にコードが割り当てられます。 PDF を別の OS で表示すると、これらのコードが誤って解釈される可能性があります。

Windows アプリケーションは歴史的に、西ヨーロッパ言語には Windows-1252、日本語には Shift-JIS などのレガシー コード ページを使用しています。 Mac アプリケーションは Unicode ベースのエンコーディングを使用する傾向があります。 Linux システムのデフォルトは UTF-8 です。 Windows で Windows 固有のエンコーディングを使用して作成された PDF を、同じ数値コードを異なる方法で解釈するシステムで開くと、文字化け (不適切な文字エンコーディングによって引き起こされる文字化けを意味する用語) が発生します。

この問題は、引用符、アクセント記号、通貨記号、数学表記などの特殊文字で最も頻繁に発生します。 é、ö、ñ などのアクセント付き文字を使用するヨーロッパ言語で作成された PDF を、別のデフォルト エンコーディングのシステムで開くと、それらの文字がスクランブル記号として表示される場合があります。 PDF 仕様には、ファイル内で文字エンコーディングを明示的に定義するメカニズムが含まれていますが、すべての PDF 作成ソフトウェアがこれらを正しく、または一貫して実装しているわけではありません。

アジア言語の PDF は特に脆弱です。従来のエンコーディングを使用するシステムで作成された中国語、日本語、または韓国語のテキストを含むドキュメントには、必要な文字マップが埋め込まれていない可能性があります。このようなファイルを別のオペレーティング システムで開くと、単なる文字化けではなく、完全に意味不明なファイルが生成される可能性があります。多言語ドキュメントを扱う組織にとって、エンコーディングの問題は、契約、法的申請、クライアントとのコミュニケーションに影響を与える可能性のある真のビジネスリスクを意味します。

破損したフォント テーブルと破損した PDF 構造

フォントの問題は、必ずしもファイルの欠落が原因であるとは限りません。 PDF 内にフォント データが存在しても、破損している場合があります。 PDF は、文字コードをグリフの説明にマッピングするフォント テーブルと呼ばれる構造にフォント情報を保存します。ファイル転送、不完全なダウンロード、またはディスク エラー中にこれらのテーブルが破損した場合、フォント データが技術的に埋め込まれている場合でも、リーダー アプリケーションはフォント データを正しく解釈できません。

部分的な破損により、最も混乱を招く結果が生じる可能性があります。ほとんどのページでは正しいテキストが表示されるが、特定のページでは文字化けが発生する場合や、見出しでは正しく表示されるが本文では文字化けが発生する場合があります。これらのパターンは、PDF の異なる部分が異なるフォント サブセットを参照し、それらのサブセットの一部のみが破損するために発生します。

PDF のアプローチは、同じファイルが先週は正しく表示されていたのに、今日はテキストが文字化けしていることに気付いた場合によく必要になります。この時間の経過に伴う変化のパターンは、ほとんどの場合、フォントの置換の問題ではなく、データの破損を示しています。ファイルの破損は、電子メールの送信中、クラウド同期中、さらにはストレージ デバイスに障害が発生し始めた場合にも発生する可能性があります。

複数のシステムを通過する PDF はリスクが高くなります。メール サーバー、クラウド ストレージ サービス、またはファイル圧縮ツールによってファイルが処理されるたびに、低い確率でデータが破損する可能性があります。複数の移籍を繰り返すと、このリスクはさらに悪化します。 Windows デスクトップから電子メール サーバー、スパム フィルター、そして最終的に Mac メール クライアントに送信される PDF は、これらのステップのいずれかで破損を検出する可能性があります。また、PDF の最も複雑な部分の 1 つであるフォント テーブルは、多くの場合、最初に破損を示す構造になります。

非標準のフォント形式とレガシー PDF バージョン

PDF 形式は 1993 年に導入されて以来、大幅に進化しました。古い PDF ファイルでは、最新のビューアが完全にサポートしなくなったフォント形式が使用されている場合があります。 Type 1 (PostScript) フォントは初期の PDF の標準でしたが、Adobe は 2021 年にフォントの非推奨を開始し、2023 年に段階的廃止を完了しました (Adobe、「PostScript Type 1 フォントのサポート終了」、2023)。現在のバージョンの Adobe Acrobat または最新のブラウザベースのビューアで Type 1 フォントを含む PDF を開くと、フォント フォールバックがトリガーされ、出力が文字化けする可能性があります。

同様に、一部の PDF 作成者は、独自のソフトウェアでのみ完全にデコードできる独自形式または圧縮形式でフォントを埋め込んでいます。古いバージョンの AutoCAD で生成された PDF では、標準のフォント形式ではなく本質的にシェイプ ファイルである SHX フォントが使用されている場合があります。ほとんどの汎用 PDF ビューアはこれらを正しくレンダリングできず、別のオペレーティング システムでの結果は予測可能です (ランダムな記号、位置ずれした文字、または空白)。

カスタム エンコードされたフォントには別の課題があります。一部の PDF 作成ツールは、オンザフライでカスタム文字エンコーディングを構築し、ドキュメントで使用されるグリフをフォント テーブル内の任意の位置にマッピングします。 PDF リーダーがこのカスタム エンコーディングを正しく解析しない場合、間違ったグリフが表示されます。テキストは実際の単語のように見えますが、文字が交換または置き換えられている場合があります。これは、読者が内容が間違っていることにすぐに気づかない可能性があるため、明らかなゴミよりも悪い場合があります。

文字化けしたPDFを修正する方法

文字化けした PDF が発生した場合、読み取れるテキストを回復する方法がいくつかあります。多くの場合、最も早い修正は、元のソース文書から PDF を再作成することです。元の Word ファイル、Google ドキュメント、またはデザイン ファイルを開き、フォントの埋め込みを明示的に有効にして PDF として再エクスポートします。 Microsoft Word では、この設定は [ファイル]、[オプション]、[保存] の下にあり、[ファイルにフォントを埋め込む] にチェックを入れます。 Google ドキュメントでは、PDF としてダウンロード オプションでは常にフォントが埋め込まれます。 Adobe InDesign または Illustrator では、フォントの埋め込みは、[詳細設定] パネルのエクスポート設定で制御されます。

元のソース文書が利用できない場合、WukongPDF はブラウザベースのエンジンを通じてファイルを再処理できます。これにより、出力の表示に使用されたオペレーティング システムに関係なく、フォント データが正規化され、エンコードの競合が解決されます。専用のRepair PDF ツールも、PDF 内部フォント テーブルを解析して再構築したり、既存の文字コードを標準 Unicode 値にマッピングしたりするのに役立ちます。

PDF を新しい PDF として印刷することも実用的な回避策です。ほとんどのオペレーティング システムには、「PDF への印刷」機能が含まれています。または「PDF として保存」印刷ダイアログのオプション。文字化けした PDF を新しい PDF に印刷すると、システムの印刷パイプラインは各ページを画像のような表現としてレンダリングし、それを新しいきれいな PDF ファイルに書き込みます。このプロセスでは、問題のあるフォント参照が完全に削除され、視覚的な表現のみが埋め込まれます。その代償として、文字はグラフィカル要素としてレンダリングされるため、新しい PDF には選択または検索可能なテキストが含まれなくなります。

フォントが欠落しているのではなく、エンコードの問題がある PDF の場合、ファイルを中間形式に変換すると、文字マッピングがリセットされる可能性があります。一部のツールでは、PDF から生のテキストを抽出し、適切な Unicode エンコードを使用して新しいファイルに書き込むことができます。この方法は、エンコードの不一致によって文字化けしたラテン文字テキストを表示する文書にはうまく機能しますが、カスタムまたは独自のフォント エンコードでは役に立たない可能性があります。このような場合、PDF に出力する方法の方がより信頼性が高くなります。

クロスプラットフォームで使用する PDF を作成する際のフォントの問題の防止

予防は修復よりもはるかに簡単です。さまざまなオペレーティング システム間で共有される PDF を定期的に作成する場合は、いくつかの習慣を身につけることで、フォント関連の表示の問題をほぼすべて解決できます。

まず、PDF にエクスポートするときは、必ずフォントを埋め込みます。すべての主要なドキュメントおよびデザイン アプリケーションはこのオプションを提供していますが、呼び方はさまざまです。「フォントの埋め込み」。 「フォントを含める」または「サブセットフォント」。フォントのサブセット化では、フォント ファイル全体ではなく、文書内で実際に使用されている文字のみが埋め込まれます。これにより、必要なすべての文字データを提供しながら、PDF サイズを管理しやすく保つことができます。ファイル サイズがわずかに増加しても、クロスプラットフォームでの可読性を保証するために支払う代償はわずかです。

次に、ライセンス上の理由で埋め込みが不可能な場合は、標準フォントまたは広く利用可能なフォントを使用してください。 Times、Helvetica、Courier、Symbol など、元の PDF 仕様で定義されている 14 の標準 Type 1 フォントは、オペレーティング システムに関係なく、すべての PDF リーダーで利用できることが保証されています。プラットフォーム間で安全な最新の同等フォントには、Arial、Times New Roman、および 1,000 以上の言語をカバーし、自由に再配布可能な Google Noto フォント ファミリなどがあります。

第三に、PDF を広く配布する前に、少なくとも 1 つの他のオペレーティング システムで PDF をテストしてください。ファイルの作成に使用したものとは異なる OS を実行しているデバイスでファイルを開きます。最初のページだけでなく、文書全体の数ページをチェックし、特殊文字、アクセント付き文字、または非ラテン語テキストに特に注意してください。 5 分間のテストで、受信者が何時間も混乱するのを防ぐことができます。

4 番目に、作成後に PDF のプロパティを確認します。ほとんどの PDF ビューアは、文書内で使用されているフォントのリストを表示し、各フォントが埋め込まれているかどうかを示すことができます。 Adobe Acrobat では、これはファイル、プロパティ、フォントの下にあります。ブラウザベースのビューアでは、通常、ドキュメントのプロパティまたはインスペクター ツールを通じてフォント リストにアクセスできます。 「(埋め込み)」と表示されているフォントがある場合は、それらの横にあると、ファイルはプラットフォーム間で正しく表示されるはずです。

最後に、長期的なクロスプラットフォームの信頼性が必要なドキュメントには PDF/A 形式の使用を検討してください。 PDF/A は PDF の ISO 標準化バージョンで、フォントの埋め込みを義務付け、レンダリングの不一致を引き起こす可能性のある機能を禁止します。これは、オペレーティング システムやフォント テクノロジがどのように進化しても、ドキュメントを数十年先まで読み続けられる必要があるユースケースをアーカイブするために特別に設計されました。

WukongPDF

PDFを修復してみる

インストールは必要ありません。ブラウザで直接動作します。

始める →