中学数学の自動組版システム

InDesign機能

Wordの数式をそのままInDesignに。
数式の再現と配置を自動化する「数式自動変換プラグイン」。
教材制作の現場ニーズに応えるべく、効率化の仕組みを開発しました。

はじめに

 教材の制作現場では「数式作成の効率化」が課題の一つとなっていました。数式の作成は基本的に一つ一つ手作業で調整しなければならず、時間を要する作業の一つでした。
 今回、当社で開発した 数式自動変換プラグイン により、Wordの数式をそのままInDesignへ取り込み、印刷に適した体裁で再現できるようになりました。本記事では、その概要と操作方法をわかりやすくご紹介します。


本書における用語解説

・SUGAKUv2n / SUGAKUspn フォント
 当社が独自に開発した数学用フォント。v2nとspnの違いは算術記号の大きさで、spnの方が少し作りが小さくなっています。現在、本プラグインが対応している書体はこの二つとなります。
・AH Formatter
 Antenna House社の組版ソフト。数式を正確に描画でき、PDF/EPS出力に対応可能です。
 特にMathMLを直接解釈して印刷品質の数式に変換できる点が強みで、このプラグインでは「数式描画エンジン」として利用しています。
・OMML
 Word内部の数式言語。Wordで「数式機能」を使用して数式を作成した時、この形式で保存されます。
 OMMLは、分数や平方根などの構造を「ただの文字」ではなく意味や階層を持った情報として記録しているため、本プラグインはこのOMMLを数式画像として変換する処理を持っています。
・MathML
 国際標準の数式言語。WebやDTPソフトなど様々な環境で共通に扱えるように、数式を「テキストのルール」で表現する仕組みです。WordのOMMLをMathMLに変換することで、WordとInDesignの間で数式の意味を正しく受け渡しできるようにしています。


プラグインの概要

・Wordの数式機能で作成された数式をInDesign用データに自動変換が可能です。
・数式はEPS(印刷に適したベクタ形式)として出力し、レイアウト上に配置できます。
・シンプルな中学数学レベルまでの数式に対応しています(分数・平方根・連立方程式など)。
・ただし、桁数の多い平方根や難易度の高い受験問題などは作成できないことがあります。

平方根(√)や「分数+平方根」をはじめとする複合的な数式は、構造が複雑になるため一括の自動処理が難しいケースがあります。
実務では、対象の誌面に合わせて必要なパターンを順次追加する運用としています。

利用例

プラグインの特徴

①独自フォント対応

 当社で開発した数式フォント「SUGAKUv2n」「SUGAKUspn」の二つの書体に対応しています。
 ただし、数式の組み方や書体の選び方は教材ごとに異なり、文字の間隔や部品の形状も出版社や案件ごとに細かな違いがあります。したがって、このプラグインを利用するには 教材ごとに組版規則を分析し、その仕様に沿った処理を追加・調整することが前提 となります。

 検証段階では、実際の学参教材を想定した原稿データを用い、実際の組版仕様に合わせた処理を定義しました。こうした「教材仕様に合わせた最適化」を行うことで、プラグインは実務の中で初めて力を発揮します。

本プラグインの導入にあたっては、対象教材の組版規則に沿って調整項目をすり合わせる工程が前提になります。

②シンプルなレイアウトは全自動

 Wordデータを読み込むだけで、数式のEPS化と本文の流し込みが自動で行われ、InDesign上に誌面が再現されます。特に四則演算や基本的な分数といった中学数学で多い数式であれば、ほぼ手を加えずに利用できます
 ただし、自動処理がカバーするのは「数式の生成」と「テキストの流し込み」までとなります。実際の誌面として完成させるには、段落スタイルの適用や、インライン部品として配置された数式EPSのベースライン調整といった仕上げ作業が必要になります。

③複雑なレイアウトにも対応

 文章題のように本文と数式が入り組んだり、段組みや配置に工夫が必要なケースでも、数式の位置をマーカーで管理することで、一定の効率化を実現しています。
 あらゆる複雑な誌面にも一度で対応できるわけではありませんが、案件ごとに必要となる処理を追加していくことで、より幅広い形式に対応できる拡張性を備えています。

④修正はやや専門的

 配置後の修正には、数式の内部構造(MathML)の理解が必要となる場面があります。特に分数の構造を変える、ルートの長さを調整するといった作業には専門的な知識が欠かせません。
 一方で、数字の訂正や演算記号の変更といったシンプルな修正であれば、MathMLを深く理解していなくても十分に対応できます。


操作方法

 プラグインはInDesignの拡張パネルとして動作し、ボタンで操作できます。

数式の作成オプション

①MathMLから数式を生成

 直接MathML(数式を表す国際標準のコード)を入力して数式を作成できます。入力欄にコードを貼り付け、「MathMLから数式を生成」ボタンを押すと、自動的にEPSファイルが生成され、InDesignのカーソル位置に配置されます。

 Mathmlを書くには専門的な知識が必要になりますが、ChatGPTなどでは数式原稿のキャプチャなどからコードが作成可能です。

②Wordデータから自動組版

 Wordファイルをそのまま読み込む方法です。Word内の本文と数式を解析し、Word数式機能(OMML)をMathMLに変換して自動的にEPS化し、InDesignに流し込みます。
 Word原稿に、数式機能(OMML)と通常テキストが混在する場合でも自動組版可能となります。


組版が終わったら、教材のレイアウトに合わせて
・段落スタイル・文字スタイル
・数式EPSのベースライン調整
などを行います。

生成される数式ファイルは一意の名前で管理され、本文内の差し替えが安定するようになっています。

・数式の修正

 配置済みの数式EPSを選択したまま「数式を修正」ボタンを選択すると、元のMathMLコードをパネルに呼び出すことで編集可能となります。

パネルに入力されたMathmlの数字などを編集した後、「Mathmlから数式を生成」を選択します。

修正された数式が出力されるので、元の数式EPSを削除して入れ替えて下さい。

・docx出力

InDesignで組んだデータをWordに戻せるため、双方向の編集が可能となります。

問題番号などの通常テキスト・数式部分のOMMLがそれぞれIndesginから変換されたWordデータが生成されます。

本プラグインによって作成された数式は、配置EPSと元データ(OMML)を識別子で紐づけて保持しているため、Word側でも再編集可能な数式として復元可能、という仕組みになっています。

・数式配置(自動貼り込み)

 数式配置(自動貼り込み)は、特定のレイアウトを対象にした試験的な仕組みです。一定パターンのレイアウトを持つ教材で特に有効です。
 そのため、あらゆるレイアウトに一度で対応できるわけではありません。ただし、同じように問題番号や段落構成が明確に整理された教材であれば、必要に応じてそれぞれの形式に合わせた貼り込み機能を追加していくことが可能です。

組版されたフレームを選択し、「数式配置」を選択

「ターゲット収集」フレームに流し込み先のテキストフレームを登録していきます。

処理を実行すると、指定された流し込み先に数式EPSが配置されます。

数式配置機能については、誌面の構成パターンが明確な教材向けに拡張した機能です。
汎用的にすべてのレイアウトに対応するものではなく、対象の教材仕様に合わせて追加・調整していく前提でご利用いただく形になります。


内部処理

 「数式の組版はどういう仕組みで行われているのか」の仕組みについて、専門用語を避けながら、シンプルにご紹介します。
 数式の作成には、大きく分けて二つの入り口があります。

・MathMLから数式を生成

 あらかじめ数式を表すコード(MathML)を入力欄に貼り付けて生成する方法です。入力した内容をもとに、AHFormatter(組版ソフト)で数式のEPSファイルを作成し、プラグイン内でトリミングなどを行った後に、InDesignのカーソル位置に配置される仕組みとなっています。
 一つ一つ個別で数式を組む際や修正時など「コードから直接数式を作りたい」ときに便利な入口です。

・Wordデータから自動組版

 Wordファイルをそのまま読み込む方法です。Word内部に保存されている数式データ(OMML)を解析し、MathMLに変換してからEPSを生成します。本文テキストと数式を合わせて再構成するので、教材の原稿を丸ごとInDesignに移すときに使います。


このプラグインで利用できるWordデータについて

 本プラグインは、Wordの数式機能(OMML)を前提として動作します。つまり、Word文書内で数式が正しく「数式オブジェクト」として作られていることが重要です。
 Wordの数式機能を使うと、分数や平方根、上付き下付きなどを「数式としての構造」を持った形で入力できます。内部的には OMML(Office Math Markup Language) という文書形式で保存されており、数式の意味や階層構造が保持されます。

 また、「同じ見た目の数式」であっても、通常のテキストで「x^2」や「√3」と打ち込んだ場合は単なる文字列であり、OMMLの構造情報はありません。この違いにより、プラグインが処理できるかどうかが決まります。

 本プラグインは、Word文書内にOMML形式の数式が存在することをトリガーとして動作します。数式部分を検出し、OMML → MathML → EPS という流れで変換を行い、InDesign上に配置します。逆に言えば、数式が単なるテキストや画像として入力されている場合は、まずWord側で「数式オブジェクト」に変換しておく必要があります。

 一方、実際の入稿データでは以下のように不揃いな状態が多く見られます。
・数式が通常の文字列で打ち込まれている(例:「√6+√2+√5」)。
・数式とテキストが混在しており、一部だけ数式機能を使っている。
・数式が画像として貼り込まれている。

このような場合、プラグインでそのまま変換することはできません。
検証段階では、実務を想定した入稿データを作成し、以下のような条件を前提に検証を行いました。
・通常テキストとOMMLが混在している
・問題番号の直後に必ず数式が配置される

こうした構成は教材原稿ではよく見られる形式のひとつであり、
その前提に基づいて、数式部分を自動的にOMML化する専用マクロを作成しました。

 もっとも、入稿形式は得意先や案件ごとに大きく異なります。そのため、Wordデータをプラグインで扱える形に整える際には、教材ごとに専用の最適化手段を検討することが欠かせません。マクロを用いたり、特定のルールを定義したり、あるいは必要に応じて手作業を加えたりと、現状では案件ごとに最も適した方法を探していくのが最善のアプローチとなります。


さいごに

 本プラグインは、Wordの数式機能を利用した原稿データをInDesignに取り込み、印刷用の体裁に変換するための仕組みです。特に中学数学レベルの比較的シンプルな数式については、従来の手作業を軽減できる可能性があります。

 一方で、万能なツールではありません。複雑な数式(分数と平方根の組み合わせなど)には現状対応が難しい場合があり、また、教材ごとに書体や文字組、数式部品の形状が異なるため、それぞれの仕様に合わせた調整作業が必要です。
 よって、本プラグインは「どの教材でもそのまま使える」ものではなく、対象教材の仕様に応じた前処理や調整を組み合わせることで活用できる仕組みとなります。適用範囲を見極めたうえで導入すれば、一定の効率化や再現性向上に役立つ可能性があります。


よくある質問(Q&A)

Q1. 対応している InDesign のバージョンは?

A. CC2019〜CC2025 まで動作確認済みです。

Q2. 書き出された EPS の「Illustrator のバージョン」は?

A. この EPS は Illustrator で作成・保存しているわけではありません。
よって、基本的にどのバージョンの Illustrator で開いても問題はないと考えられます。
 ただし、本ワークフローでは フォントをアウトライン化 しているため、Illustrator 上での編集は限定的です(数値の直接編集などは不可です)。

 また、AH FormatterでEPS生成が行われた後、「GhostScript」というアプリケーションでトリミング作業が行われるという処理工程を辿っているため、Bridge の情報欄にも「アプリケーション:GPL Ghostscript …」と表示されます(=PostScript 互換の汎用 EPS)。

Q3. InDesign に配置後、誤記などを見つけたときの修正手順は?

A. EPS を直接編集せず、プラグインの 「数式を修正」 を使います。

※ 当記事の 「数式の修正」 をご参照下さい。

この機能が、InDesign に配置した状態から EPS 内の数値や記号を修正できる唯一の方法となります。
もちろん、Word 原稿の数式部分を修正して再度読み込む方法もありますが、工程としては手間がかかります。
通常は「数式を修正」機能で済ませるのが最も効率的です。

Q4. 修正は「EPS を直す」の? それとも「Word を直して書き出し直す」の?

A. EPS ファイルを Illustrator 等で直接開いても、内部はすべてアウトライン化されているため数値や記号を編集することはできません。
修正の基本方針は、プラグインの 「数式を修正」 機能を使って MathML を書き換え、再出力する方法です。

もちろん Word 原稿の数式を修正して再読み込みすることも可能ですが、工程としては手間がかかります。
効率的に誤記や数値の修正に対応するには「数式を修正」機能を使うのが唯一の実用的な手段となります。

Q5. すべて macで完結しますか?Windowsと分業が必要ですか?

A. macだけで完結します。
ただし、プラグインの動作に必要な前提アプリケーションは、事前にプラグインを使用するマシン内に構築しておく必要があります。

Q6. 「SUGAKUKigo」「SUGAKUSymbol」には対応していますか?

A. 現時点での既定対応は SUGAKUv2n / SUGAKUspn のみです。

 本プラグインは、利用前にその案件ごとに「使用する書体・Q数・出てくる数式の種類」を定義してからはじめて力を発揮します。
 そのため「SUGAKUKigo」「SUGAKUSymbol」のような他書体についても、もし対象案件で必要になる場合には、仕様を確認した上で特定の文字や記号にその書体を割り当てるといった追加定義を行うことは可能です。

 つまり、あらかじめ対応しているわけではなく、案件仕様に応じて調整・拡張する前提で検討する形になります。

関連記事

記事一覧

コメント

この記事へのコメントはありません。

TOP
CLOSE