表のあるMarkdownを、読みやすいままPDFに印刷する
執筆 pdftomd.tools チーム · 更新日 · 約8分で読めます
表を崩さずに、表のあるMarkdownをPDFに印刷したいなら、シンプルなGFMの表を書き、ページに収まる幅に保ち、私たちのMDをPDFに変換するツールのように行を決して半分に切らないレンダラーで書き出しましょう。その後PDFを開いて3つの点を確認します。すべての列が見えること、改ページで行が切れないこと、セルのテキストを選択・検索できることです。

短い答え:GFMの表+行を切らないレンダラー
Markdownの表は GitHub Flavored Markdown の拡張です。ヘッダー行、区切り行、データ行を縦棒で区切ります。まともな書き出しツールならどれも理解します。違いが出るのは、表がページの端にぶつかるとき、つまり右側(列が多すぎる)か下側(行が多すぎる)です。
印刷した表が読みやすいかどうかは、3つの点で決まります。ページに対する表の幅、改ページで起きること、そして結果が本物のテキストかどうかです。このガイドの残りでは、2026年10月18日に私たち自身の書き出しツールで測った数字とともに、それぞれを順に扱います。

きれいに印刷できる表を書く
表のあるMarkdownをPDFに印刷するとき、問題のほとんどは元のファイルで始まります。いくつかの習慣で防げます。
- セルは短く。 長い説明は表の下の段落に入れ、セルには短い言葉を入れます。
- 数字をそろえる。 区切りを
---:にすると列が右寄せになり、紙の上で数字を比べやすくなります。 - 必ずヘッダー行を。 GFMでは必須で、表が2ページ目に続いたときに読む人が探すのもこの行です。
- スペースのない長い文字列を避ける。 URLやファイルパスはスペースで折り返せないので、列が広がります。短くするか、脚注風のリストに移しましょう。
- セル内の縦棒はエスケープ して
\|にします。そうしないと、その行に余分な列ができます。
| Task | Owner | Status |
| :------------- | :---- | --------: |
| Draft the brief | Dana | Done |
| Review tables | Lee | In review |
| Export the PDF | Sam | Next |書き出す前に、印刷のおおよその幅で表を見てください。私たちの書き出しツールでは、A4のテキストの列は約680 CSSピクセルです。狭いプレビューですでに横スクロールが出るなら、紙では窮屈になります。
幅の広い表:A4に列が収まらないときの選択肢

幅の広い表は、PDFの書き出しが黙って失敗する最も多い原因です。この記事のテストを始めたとき、私たち自身のツールで書き出した9列の表は、ヘッダーのセル9個のうち5個しか完全にページに収まらず、最後の列はまったく見えませんでした。残りは右の余白の外にはみ出していたのです。同じ日に書き出しツールを修正しました。はみ出しそうな表は、今ではセルを折り返して収め、再テストでは9列すべてがページに収まり、右の余白の外にテキストはありませんでした。

収めるほうが列を失うよりましですが、きれいではありません。とても狭いセルでは単語が分かれます。幅の広い表には、PDFのレイアウトとして次の4つのより良い選択肢があります。上から順に検討してください。
- 紙の上では不要な列を削るか、まとめる。
- 表を分ける。 IDや名前など、キーとなる列を共有する2つの表にします。
- 行と列を入れ替える。 たくさんの列が行になります。
- 横向きで印刷する。 私たちの書き出しツールはA4縦しか書き出しません。Chromiumベースの書き出しツールは
@page { size: A4 landscape; }のようなCSSの規則を受け付けます(MDN: size)。
複数ページにまたがる長い表
複数ページにまたがる表は、2つの形で失敗します。行が半分に切れて、片方がページの上、もう片方が次のページの下に来ること。そして2ページ目にヘッダー行がなく、読む人が列を見失うことです。1ページより長い表のあるMarkdownをPDFに印刷するなら、どちらも重要です。各行が2行に折り返す60行の表でテストしました。
| 書き出しツール | ページ数 | 切れた行 | ヘッダー行のあるページ |
|---|---|---|---|
| pdftomd.tools MD→PDF | 4 | 0 | 4ページ中1 |
| Chrome、PDFとして印刷(Chrome 155.0.8059.84) | 3 | 0 | 3ページ中3 |

私たちの書き出しツールはどの行も切りませんが、後のページでヘッダー行を繰り返しません。Chrome は両方を行いました。CSS 2.1 の仕様はこれを許していますが、求めてはいません。
“印刷のユーザーエージェントは、表がまたがる各ページでヘッダー行を繰り返してもよい。”
今すぐ私たちのツールでヘッダー行を繰り返したいなら、長い表をページに収まる大きさに分け、ヘッダーを自分で繰り返してください。HTMLベースの書き出しツールでは、tr { break-inside: avoid; }(MDN)で、行を切らないようブラウザに頼めます。
表のあるMarkdownをPDFに:ブラウザツール、VS Code、Pandoc
3つの方法はどれも、表のあるMarkdownをPDFに印刷できます。違うのはセットアップと、どれだけ細かく制御できるかです。
| 方法 | 表示の仕組み | 実際の表の扱い |
|---|---|---|
| 私たちのブラウザツール | ブラウザでページを組み、pdf-lib でテキストを書き出す | 行は切れない。ヘッダーは繰り返さない。幅の広い表は折り返す |
| VS Code と拡張機能 Markdown PDF | Chrome、Edge、Chromium で印刷 | 独自のスタイルシートと横向きの設定を受け付ける |
| Pandoc | 初期設定ではLaTeX経由で変換 | longtable 環境を使うので、表はページをまたげる |
VS Code での表については、拡張機能 Markdown PDF が独自のCSS用の markdown-pdf.styles 設定と、縦向き・横向きのオプションを説明しています。上の Chrome の行と同じエンジンであるChromium系のブラウザで印刷しますが、拡張機能そのものはテストしていません。
Pandoc での表については、Pandoc のマニュアルに、LaTeXの出力は初期設定で longtable を使うので表がページの境目をまたげる、とあります。また、パイプテーブルに列幅より長い行がある場合、相対的な列幅は区切り行のハイフンの数で決まるとも書かれています。HTMLを使わずに列を広くする方法です。
pandoc report.md -o report.pdfPDFを確認する:選択できるテキスト、検索できるセル

表のあるMarkdownをPDFに印刷するときの最後の確認は、テキスト層です。表の書き出しが役に立つのは、セルが本物のテキストの場合だけです。私たち自身のツールの代替モードを含め、一部の書き出しツールは各ページを画像としてPDFに保存します。見た目は良いのですが、検索も、コピーも、スクリーンリーダーでの読み上げもできません。確認は10秒で済みます。PDFを開き、Ctrl+F(またはCmd+F)を押して、表のセルにしかない単語を検索します。次に1行を選択して貼り付けます。
私たちの書き出しツールは、フォントのサブセットを埋め込んだ本物のテキストを書き出します。往復テストでは、4つの表をPDFに印刷し、私たちのPDF→Markdownのツールで戻したところ、17行中17行が元と同じで、エスケープした縦棒や右寄せの数字も含まれていました。逆方向については、PDFの表をMarkdownに変換するガイドを読んでください。
出典
- GitHub Flavored Markdown Spec, 4.10 Tables (extension) — GitHub, 2019
- CSS 2.1 Specification, 17 Tables — W3C, 2011
- break-inside — MDN Web Docs
- size (@page descriptor) — MDN Web Docs
- Pandoc User’s Guide — pandoc.org
- Markdown PDF (VS Code extension) — yzane, Visual Studio Marketplace
よくある質問
表のあるMarkdownをPDFに印刷するには?
ヘッダー行のあるGFMのパイプテーブルを書き、ページに収まる幅に保って、行を切らないツールで書き出します。その後、PDFで切れた列、分かれた行、選択できるテキストを確認してください。
PDFで表の列が切れてしまうのはなぜですか?
表が印刷できる範囲より広く、書き出しツールが縮小しないためです。列を削るか分ける、表の行と列を入れ替える、横向きで印刷する、のいずれかを試してください。私たちの書き出しツールは、今では幅の広い表をページに合わせて折り返します。
ヘッダー行はどのページでも繰り返されますか?
書き出しツールによります。私たちのテストでは、Chrome のPDF印刷はすべてのページで繰り返しましたが、私たち自身の書き出しツールは最初のページにしか表示しません。読む人に必要なら、長い表を分けてください。
Markdownの表を横向きで印刷できますか?
A4縦で書き出す私たちのツールではできません。Chromiumベースのツールはスタイルシートの @page { size: A4 landscape; } を受け付け、VS Code の拡張機能 Markdown PDF には向きの設定があります。
PDFの表のテキストは検索できますか?
私たちの書き出しツールなら、できます。セルはフォントを埋め込んだ本物のテキストです。代わりにページの画像を保存するツールもあるので、念のためセルの単語を検索してください。
PDFをMarkdownに戻すと、ページをまたぐ表は1つにまとまりますか?
いいえ。戻すとページごとに1つの表になります。つなげるには、繰り返されたヘッダー行と区切り行を消してください。方法は表のガイドにあります。

