リファレンス
本文書では,minitype のドキュメントモデル,ならびにグループおよびフローの構造を説明します.
ドキュメントモデル
Section titled “ドキュメントモデル”minitype で生成する文書は,グループ(Group)の配列として構成されます.
グループは版面設定(スタイル,フロー)を共有するまとまりです.
各グループの body には,ブロック要素,BlockExtender,フローを混在させて並べられます.
各ブロック要素についてはブロック要素を,スタイルについてはスタイルを参照してください.
グループ(Group)
Section titled “グループ(Group)”type Group = { body: Body; pageIndex?: number; style?: GroupStyle; labelOptions?: GroupLabelOptions;};body:ブロック要素,BlockExtender,フローの配列です.pageIndex:グループの開始ページ番号(0-based).指定しない場合はドキュメントの通し番号を使用します.style:グループ固有のスタイル(DocumentStyleからsizeを除いた部分集合).labelOptions:図表番号の採番設定.省略した場合,前のグループの設定を継承します.
ラベルオプション(GroupLabelOptions)
Section titled “ラベルオプション(GroupLabelOptions)”type GroupLabelOptions = { counterResetAt?: HeadingLevel | false; formatCounter?: (context: LabelCounterFormatContext) => number | string;};counterResetAt:何レベルの見出しで図表番号をリセットするか.falseを指定すると文書全体の通し番号になります.formatCounter:カウンタの表示文字列を生成する関数.headingIndex(現在の見出し番号配列)とindex(カウンタ値)を受け取ります.
フロー(Flow)
Section titled “フロー(Flow)”フローは本文とは独立してページ上に配置されるブロック要素群です.柱・ノンブルや背景画像の配置に使用します.
type Flow = { type: "flow"; position: (typeof FLOW_POSITIONS)[number]; blocks: (Block | BlockExtender)[]; inlineOffset?: number; blockOffset?: number; inlineSize?: number; page?: number | PageFilter; writingMode?: WritingMode; zIndex?: number;};type PageFilter = (pageIndex: number, labels: LabelMap) => boolean;position の基準位置には,以下の値を使用します.
| 値 | 横組における位置 | 縦組における位置 |
|---|---|---|
"pillar" | 版面上端を基準とする相対位置 | 版面右端を基準とする相対位置 |
"nombre" | 版面下端を基準とする相対位置 | 版面左端を基準とする相対位置 |
"page" | ページ左上を原点とする絶対位置 | ページ左上を原点とする絶対位置 |
ラベルと相互参照
Section titled “ラベルと相互参照”ブロック要素またはインラインコマンドに label プロパティを指定すると,そのラベルを使用した相互参照が可能になります.
{ ...image("chart.png"), label: "fig:result" };{ ...math(["E = mc^2"]), label: "eq:energy" };
// 図 1 に示すように……p([[autoref("fig:result"), "に示すように……"]]);// 式 1 より……p([["式", ref("eq:energy"), "より,"]]);// 詳細は 1 ページ参照p([["詳細は", pageref("fig:result"), "ページ参照"]]);