Wordの技術文書をMarkdownへ変換する際、本文や表は比較的確認しやすい一方、フローチャートでは別の問題が起こりがちです。図が消えてノードの文字列だけが残ったり、画像として出力されても、モデルがボックス間の接続関係を理解できなかったりします。
文書プレビューでは「図が見える」ことが重要です。一方で、検索、RAG、ナレッジベースでは「図の意味を読み取れる」ことも同じく重要です。どちらか一方だけを残しても、後続の作業ではフローチャートの価値が失われる可能性があります。
Wordのフローチャートが文字だけになる理由
Wordのフローチャートは、DrawingMLの図形で構成されている場合があります。各ボックス、接続線、矢印、テキストボックスはそれぞれ独立したオブジェクトです。ページ上では一つの図に見えますが、一般的なDOCXのテキスト抽出では、段落とテキストボックスだけを走査することが少なくありません。
その結果、通常は次のいずれかになります。
- ノードの文字は抽出されるものの、Markdownの先頭または末尾にまとめて並ぶ。
- 接続線と矢印が完全に失われ、意味を読み取れないラベル一覧だけが残る。
- 図全体が画像になるため見た目は残るが、文字を検索できず、モデルもノード間の関係を把握できない。
これは単なる「画像の出力漏れ」ではありません。視覚オブジェクトと意味的な構造が、一緒に引き継がれていないことが原因です。
SVGとMermaidを両方出力する理由
SVGとMermaidは、それぞれ異なる課題に対応します。
SVGで元の視覚レイアウトを保持する
SVGは、Markdownのプレビューでボックスの位置、矢印の向き、全体のレイアウトを表示するのに適しています。一般的なビットマップ画像よりも鮮明で、拡大してもぼやけにくい点が特長です。
人がレビューする際には、SVGによって「この図はWordで見えていたものと一致しているか」をすばやく確認できます。
Mermaidで検索可能な接続関係を保持する
Mermaidは、ノードと接続関係をテキストで表現します。たとえば次のようになります。
flowchart LR
n0["Transaction"]
n1["Public Key"]
n2["Signature"]
n0 --> n1
n1 --> n2
この内容は検索やバージョン管理に利用でき、RAGのチャンク化やモデルによる理解にも適しています。MarkdownリーダーがMermaidをレンダリングしない場合でも、コードブロック自体には図のノード、方向、ラベルが保持されます。
そのため、ナレッジベース向けにはSVGかMermaidかを二者択一にするのではなく、次のように使い分けるのが適切です。
SVGで「図がどう見えるか」を保持し、Mermaidで「図がどのような関係を表すか」を保持します。

DOCXを保存して再アップロードしても、フローの関係は残る?
Word内に認識可能なDrawingML図形が保持されている場合、SimplifyAIはボックス、接続線、矢印、文字からフローの関係を復元し、Markdown内のMermaidコードブロックとして生成を試みます。
これは文書を往復して扱う場合に重要です。一般的な流れは次のとおりです。
- PDFを、編集可能な図形を含むDOCXへ変換する。
- ユーザーがダウンロード後、Wordで保存、レビュー、編集する。
- その後DOCXを再アップロードし、ナレッジベース用のMarkdownへ変換する。
重要なのは、この処理が元のPDFに依存しないことです。Wordでノードの文字を修正したり、ボックスを移動したりしてから再アップロードした場合、復元されるのは元の図ではなく、現在の文書の状態です。出力されたMarkdownは、同じ成果物内にあるSVGファイルを相対パスで参照し、その直後にMermaidコードブロックが続きます。そのため、両方をまとめて移動・登録できます。
現在の対象範囲と注意点
特に適しているケース:
- 長方形のノード、接続線、矢印、テキストラベルで構成されたDrawingMLのフローチャート。
- SimplifyAIから出力した、編集可能なWord図形を再アップロードするケース。
- Wordの技術文書をMarkdown、RAG、ナレッジベースに取り込むケース。
- 視覚的なプレビューと機械可読な関係の両方を残したいチーム。
人による確認が必要、または復元できない可能性があるケース:
- SmartArt、複雑なグループ化オブジェクト、またはサードパーティ製ソフトウェアで作成された特殊なDrawingML。
- 編集可能な図形ではなく、画像だけで構成されたフローチャート。
- 接続線の端点がノードから離れている、または図形間の関係自体が不明確な図。
- データチャート、自由形式のイラスト、スキャン画像。これらはMermaidのフローチャートとして扱うべきではありません。
- 複雑な表のセル内に配置された浮動図形。出力位置の追加確認が必要になる場合があります。
システムは、通常のテキストボックスをフローチャートと誤認しないよう優先的に判断します。関係を確実に復元できない場合、Mermaidを生成するために誤った接続を補うことは適切ではありません。
実際のワークフロー
- 編集可能なフローチャートを含むDOCXをアップロードします。
- 「Markdownを抽出」を選択します。
- プレビューでSVGが完全に表示され、ノードの文字が重複して散在していないか確認します。
- Mermaidコードブロックで、ノード、矢印の向き、接続線ラベルを確認します。
- ナレッジベースへ取り込む前に、複雑な図を2〜3件、人手でサンプル確認します。
元ファイルがPDFで、先に編集可能なWord図形を取得したい場合は、PDFフローチャートをWordで編集可能に変換をご覧ください。文書の中心が本文と表である場合は、DOCXをMarkdownに変換して表と見出し階層を保持する方法も参考になります。
次のステップ
代表的なフローチャートを含むWord文書を1つ選び、まず変換を試してください。RAGの用途では、Mermaidがノードと矢印の関係を正確に表せているかどうかが、画像の見た目以上に、その後の検索や質問応答の品質に影響することがあります。