Microsoft Edge で PDF フォームのカスタムフォントが「?」になる原因と解決策

Adobe Acrobat では問題なく表示できるのに、Microsoft Edge で PDF フォームに入力すると日本語や記号がすべて「?」に変わってしまう――。社内専用フォントやカスタムフォントを使った帳票で、いま実際に多くの企業が直面しているトラブルです。この記事では、その原因と現実的な回避策、今後の見通しをまとめます。

目次

Edge で Adobe フォームのカスタムフォントが「?」になる現象

まずは現象を整理します。代表的なパターンは次のようなものです。

  • 自社専用フォント(コーポレートフォント)を埋め込んだ PDF フォームを作成している。
  • Adobe Acrobat / Adobe Reader で開くと、フォームの表示も入力も問題ない。
  • しかし Microsoft Edge や他のブラウザ内蔵 PDF ビューアーで同じファイルを開き、フォームに文字を入力すると、その場では見えていても確定後に「?」に置き換わる。
  • 別の PC でも同様の症状が再現し、フォント自体は OS にインストールされている。

2024 年の Microsoft コミュニティ(Microsoft Q&A)でも、まったく同じ状況が報告されており、質問者の社内 IT から「ブラウザの PDF ビューアーは ISO 32000-1(PDF 1.7)のフォント仕様をまだ完全には実装していないため」と説明されたケースがあります。

つまり、この問題は特定の環境だけで起きるレアケースではなく、ブラウザ内蔵 PDF ビューアーの仕様上の制限が原因で発生しやすい既知の事象と考えてよいでしょう。

なぜ Edge の PDF ビューアーで文字が「?」になるのか

ブラウザ内蔵 PDF ビューアーは「軽量実装」

Adobe Acrobat は PDF 規格(ISO 32000-1:PDF 1.7)を策定した本人でもある Adobe が長年開発してきた「フル機能実装」です。一方、Microsoft Edge や Chrome などに搭載されている PDF ビューアーは、ブラウザ上で高速に動作させることを重視した 軽量実装 であり、フォント関連の仕様を厳密に再現していない部分があります。

特に問題になりやすいのは、次のようなケースです。

  • CID フォント(CJK 向けの多言語フォント)やグリフサブセットを使っている。
  • 文字コードとグリフを結びつける ToUnicode マップが複雑、あるいは一部欠けている。
  • フォームフィールドの「表示用フォント」と「入力用フォント」が異なる。

ブラウザ側の PDF ビューアーは、本来なら埋め込まれたカスタムフォントを使って描画すべきところを、仕様解釈や実装の制限により OS 標準フォントや内部フォントに置き換えて表示する場合があります。このとき、代替フォントがその文字を持っていない と、最後の逃げ道として「?」(または豆腐と呼ばれる □)が表示されます。

CID フォントと Unicode マッピングの落とし穴

日本語や中国語など多くの文字を含むフォントは、PDF 内ではしばしば CID フォント として扱われます。CID フォントでは、実際の文字コードではなく「CID(Character ID)」という番号とグリフが対応づけられ、別途用意された CMap や ToUnicode の定義を通じて Unicode にマッピングされます。

ところが、

  • PDF 作成ツールが生成した CMap がブラウザ側の実装と相性が悪い
  • フォームの「入力された文字」だけ別のエンコーディングで保存される
  • ビューワーが CID フォントの一部機能をサポートしていない

といった事情が重なると、CID から Unicode への変換がうまくいかず、「本来の文字」ではなく「?」に置き換わる、もしくは全く表示されないといった挙動になります。

用語概要Edge で起こりやすい問題
CID フォントCJK などの多言語を扱うためのフォント形式。グリフを CID という番号で管理する。CID → Unicode の変換ロジックがブラウザ側で簡略化されており、一部文字が「?」になる。
ToUnicode マップCID 番号と Unicode コードポイントを対応づける表。定義が複雑/一部欠落している PDF では、ブラウザが正しく解釈できず文字化けしやすい。
フォントサブセット使用した文字だけを抜き出して埋め込む仕組み。PDF サイズを抑えられる。ブラウザが未使用文字を入力した際に、サブセットに含まれず、代替フォントに切り替わってしまう。

「表示は正しいのに入力だけおかしい」理由

多くの方が不思議に感じるのが、フォーム初期表示の文字列はきれいに見えるのに、自分で入力した文字だけ「?」になる という挙動です。

これは、PDF フォームが次の二層構造になっているためです。

  • PDF 作成時に出力された「既定テキスト(静的なテキスト)」
  • 利用者が入力した内容を表示する「フォームフィールドの外観(アピアランス)」

Acrobat はどちらの層でも埋め込まれたフォントを忠実に使おうとしますが、ブラウザ内蔵ビューワーは、フォームフィールド側だけシステム標準フォントなどに置き換えて描画することがあります。その結果、

  • 既定テキスト:埋め込みフォントで表示 → 問題なし
  • 入力テキスト:代替フォントで表示 → 非対応文字が「?」になる

という差が生まれます。

一時的な回避策:Edge の「New PDF Viewer」を有効化する

Microsoft Q&A では、この現象に対して Edge の試験的機能「New PDF Viewer」を有効化することで改善した という報告があり、サポート担当も公式に案内しています。

設定手順は次の通りです。

  1. Edge を起動し、アドレスバーに edge://flags と入力して Enter キーを押します。
  2. 表示された実験機能一覧の検索ボックスに PDF と入力します。
  3. New PDF Viewer という項目を探し、右側のドロップダウンを Enabled に変更します。
  4. 画面下部の「Restart」ボタン、または Edge を手動で再起動します。
  5. 問題の PDF フォームを再度開き、フォームに入力して「?」が解消しているか確認します。
項目内容
反映範囲Edge の「現在のプロファイル」のみ。PC 全体・他ユーザーには影響しない。
安定性「試験的機能」であり、将来仕様が変わる・削除される可能性がある。
メリット簡単な設定だけで、カスタムフォントや CID フォントの扱いが改善するケースが多い。
デメリット企業利用では、ユーザーごとに設定が必要で、一括管理が難しい。

あくまで「回避策」ではありますが、まずはこの設定を試すことで、開発側を大きく変更せずに症状だけ抑えられる場合があります。

恒久的な解決策:開発・運用の両面から対処する

1. Microsoft Edge へフィードバックを送る

前述の Microsoft コミュニティの回答では、edge://flags に並ぶ機能は「将来の正式版に取り込みを検討している候補」であり、ユーザーのフィードバック量が実装優先度に大きく影響する、と説明されています。

組織としてこの問題を重要視するのであれば、単に待つのではなく、実際の PDF を添付したフィードバックを数多く送る ことが有効です。

フィードバック送信のポイントは次の通りです。

  1. Edge 画面で Shift + Alt + I を押してフィードバック画面を開く。
  2. 「Edge で PDF フォームに入力するとカスタムフォントが『?』になる」など、現象を日本語と英語の両方で簡潔に書くと効果的です。
  3. 問題が再現する PDF フォームファイルを添付する。
  4. 可能であれば、同じフォームを Acrobat で開いた場合のスクリーンショットも添付し、差分が一目で分かるようにする。

企業としては、代表者だけでなく、実際に影響を受けているユーザーからも個別にフィードバックを送ってもらうことで、「現場で困っている人が多い」ことを示すことができます。

2. PDF 作成側でのフォント対策

次に、Adobe フォームや他の PDF 作成ツール側で対応する方法です。考えられる代表的な対策を整理します。

対策内容メリット注意点
フォントの完全埋め込みフォームで使うカスタムフォントを、サブセットではなく「全グリフ」埋め込みにする。未使用文字を後から入力しても、PDF 内にグリフが存在するためブラウザが正しく描画できる可能性が高まる。PDF サイズが大きくなる。フォントライセンスによっては「埋め込み禁止・制限付き」の場合がある。
アウトライン化(パス化)動的に編集しないテキストは、文字としてではなく図形(パス)に変換して保存する。フォント情報に依存しなくなるため、どのビューアーでも見た目がほぼ同じになる。文字情報が失われるため、コピー&ペーストや検索、スクリーンリーダーでの読み上げが難しくなる。
標準フォントへの置き換えフォームフィールドで使用するフォントを Arial / Helvetica / Times New Roman など標準的なフォントに変更する。Edge を含む多くの PDF ビューアーで動作検証されているフォントのため、文字化けリスクを抑えやすい。ブランドロゴやコーポレートフォントを重視するデザインでは妥協が必要。

実務では、

  • 「ユーザーが入力する可能性のある項目だけ標準フォントにする」
  • 「表示用はコーポレートフォント、入力欄は標準フォント」というように役割で使い分ける

といった折衷案が現実的です。

3. ユーザー側の運用ルールでリスクを下げる

開発側の対応だけでは、すぐに全フォームを改修するのが難しいケースも多いはずです。その場合は、ユーザー側の運用でトラブルを抑えることも重要です。

  • 重要書類は必ず Acrobat / Adobe Reader で開くよう社内ルール化する。
  • 社内ポータルやマニュアルに「Edge で PDF フォームが文字化けした場合の対処手順」をまとめておく。
  • フラグを変更してもよい部署には、「New PDF Viewer を有効化する手順書」を配布する。
  • IT 部門で既定の PDF ビューアーを Acrobat に切り替える(グループポリシーや Intune などで既定アプリを配布する)。

特に、社外提出用の重要な申請書・契約書などは、Edge ではなく Adobe 製品で開くように明示したほうが安全です。

4. フォームのフラット化という選択肢

「PDF 上でユーザーに入力させる必要はなく、印刷や閲覧専用でよい」場合には、フォームフィールドをフラット化してしまうのも有効です。フラット化とは、入力欄を通常のテキストオブジェクトに変換し、フォームとしての機能を無効化する処理です。

フラット化されたフォームは、テキストの内容が固定されるため、ブラウザ側で余計なフォント代替処理が入る余地が少なくなります。結果として、どのビューアーでも同じ見た目で表示されやすくなり、文字化けのリスクを大きく減らせます。

ただし、当然ながらブラウザ上での入力や編集はできなくなるため、次のような用途に限定して検討してください。

  • 社内システムが自動で値を流し込み、ユーザーには閲覧・印刷だけさせたい帳票
  • 最終版として PDF を保存する際にのみフラット化するワークフロー

Edge の今後の対応見通し

先ほどの Microsoft コミュニティの回答では、edge://flags にある New PDF Viewer について、次のような説明がされています。

  • edge://flags に並んでいる機能は、将来の正式版 Edge に取り込みが検討されている候補である。
  • ただし、まだ評価中のため、いつ正式版に統合されるか、そもそも統合されるかは未定。
  • Shift + Alt + I からのフィードバックが多い機能ほど、正式機能として残る可能性が高まる。

つまり、

  • Edge がカスタムフォントや CID フォントを含む PDF フォームに正式対応する可能性は高い
  • しかし、具体的なバージョンやリリース時期は公表されていない

というのが現時点での現実的な読み方です。

このため、企業としては、

  • 短期的には本記事で紹介した回避策・運用ルールでしのぐ
  • 中長期的には、新しい Edge バージョンで挙動が改善していないか、定期的に検証する

という二本立てで対応するのがよいでしょう。

実務で役立つチェックリスト

トラブル発生時の切り分け手順

実際に「?」問題が発生したときに、現場で素早く原因を切り分けるためのチェックリストです。

  1. 同じ PDF を Adobe Acrobat / Adobe Reader で開き、同じように入力して再現するか確認する。
  2. Chrome / Firefox など、Edge 以外のブラウザでも同じ症状が出るか確認する。
  3. Edge で New PDF Viewer を有効化して再テストする。
  4. PDF 作成元ツール(SAP、Adobe Experience Manager Forms 等)が分かる場合は、フォント設定と埋め込み方法を確認する。
  5. OS に対象フォントがインストールされているか、念のため確認する。

この手順を踏むことで、

  • 「Acrobat でもおかしい」→ PDF 自体の問題
  • 「Acrobat では正しいが Edge だけおかしい」→ Edge の実装や設定の問題
  • 「Edge の New PDF Viewer 有効化で改善する」→ 将来の正式版で解消される可能性が高い

といった判断がしやすくなります。

新規フォーム設計時に意識したいポイント

今後新しく PDF フォームを設計する場合、Edge でのトラブルを避けるために、次の方針を検討するとよいでしょう。

  • ユーザー入力が想定されるテキストフィールドは、基本的に標準フォント(Arial / Helvetica 系)を使う。
  • コーポレートフォントは、見出し・タイトル・ロゴなど「編集されない部分」に限定する。
  • どうしても入力欄に専用フォントを使いたい場合は、テスト用 PDF を作成し、複数のブラウザで事前検証する。
  • PDF ではなく Web フォーム(HTML + Web アプリ)側で入力させ、PDF は帳票出力専用にする構成も検討する。

よくある質問(FAQ)

Q. New PDF Viewer を有効化しても改善しない場合は?

A. その場合は、PDF 自体のフォント埋め込みや CMap 定義に問題があるか、Edge の現行実装では再現性のある不具合である可能性が高いです。New PDF Viewer 有効化の有無に関わらず症状が変わらない場合は、PDF 作成側での対策(標準フォントへの置き換えやアウトライン化) を優先的に検討してください。

Q. Edge のフォント設定(edge://settings/fonts)を変えれば直りますか?

A. 一部のケースでは効果があるものの、埋め込みフォントや CID フォントが絡むフォーム文字化けに対しては限定的です。これは、PDF 内で指定されたフォント情報がブラウザ側の内部処理によって決定されるためで、ユーザーが UI から指定できる標準フォント設定だけでは制御しきれない部分があるためです。

Q. 会社のポリシー上、ユーザーに flags 画面を触らせたくありません。

A. その場合、flags に頼らない運用を前提に設計する必要があります。具体的には、

  • 既定の PDF ビューアーを Acrobat にする(Edge では開かない)
  • 重要な帳票は必ず Acrobat で開くよう、フォーム内やメール本文に明記する
  • どうしてもブラウザで開かざるを得ない場合は、標準フォントベースの PDF に切り替える

などの選択肢が考えられます。

Q. Edge 以外のブラウザなら安全ですか?

A. 残念ながら、Chrome や Firefox など他ブラウザでも、埋め込みフォントや CID フォント周りの解釈が完全ではないケースが報告されています。 あるブラウザでたまたま正しく表示されているだけで、将来のアップデートで挙動が変わる可能性もあります。そのため、「特定ブラウザに依存せず、PDF 自体を堅牢に作る」「重要書類は Acrobat で開く」という方針を取るのが無難です。

まとめ:いま取れるベストプラクティス

Edge で Adobe フォームのカスタムフォントが「?」になる問題は、PDF 規格そのものではなく、ブラウザ内蔵 PDF ビューアーの実装がまだ追いついていないことに起因するケースが多いと考えられます。

現時点で取れる現実的な対策を整理すると、次のようになります。

  • 短期的対策
    • Edge の New PDF Viewer を有効化して改善するか確認する。
    • 重要書類は Edge ではなく Acrobat / Adobe Reader で開くよう徹底する。
    • 問題が発生した PDF を添付して、Edge へフィードバックを送る。
  • 中期的対策
    • PDF 作成段階でフォント埋め込み方法を見直す(完全埋め込み・標準フォントへの置き換えなど)。
    • 入力が不要な箇所はアウトライン化やフラット化を検討する。
    • 新規フォームは「ユーザー入力欄は標準フォント」を基本方針にする。
  • 長期的視点
    • Edge のアップデート情報をウォッチし、新しいバージョンごとに再検証する。
    • 将来のブラウザ側の仕様改善を前提にしつつも、「Acrobat で開けば確実に正しく表示される」設計を維持する。

「Edge が正式対応してくれればすべて解決」というのが理想ですが、リリース時期が読めない以上、業務を止めないためには 開発・運用・ユーザー教育の三方向から少しずつリスクを削っていく ことが重要です。本記事を参考に、自社のフォーム運用ポリシーや PDF 作成フローを見直してみてください。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次