marp でスライドを作ってみた話を書いていく
普通に Google Slide や Power Point でいいのでは? →既存のドキュメントをそのまま PPTX で欲しいという要望への対応
Google Docs で作っているドキュメントを PPTX に置換するのはそれなりに骨 →マークダウンから Google Docs と同等のものと PPTX の双方を出力!
こうなる。
Marp for VSCode
Draw.io Integration
割愛。 こちらとかから導入
左のメニューから拡張機能を導入。
左のメニューから拡張機能を導入。 製図に便利なのでほしいなら。
README.mdみたいに編集する
先頭に以下の呪文を入れる必要あり
--- marp: true ---
3つハイフンで改ページ
---
デフォルトだと PDF 出力なので吐かせ方を任意に変更 拡張機能の一覧から設定を開けるのでそちらから実施
右上のサンドイッチめいたアイコンをクリック後、 Export Slide Deck... をクリック
CSS でテーマ(見た目)を指定できる。
公式のガイドを参考に。 以下のようにテーマの名前を入れないと動かないので注意。
/* @theme theme-name */
CSS 内で @import することで他のテーマを読み込める。
@import
@import 'gaia'
これが難しいので注意。 設定の Markdown > Marps:Themes に対象の CSS のパスを入れる。 ワークスペースのルートからのパスを入れる必要があるので注意。
Markdown > Marps:Themes
/(ワークスペースのルート) └markdownToDocuments └marp_trial ├README.md └css ├basic.css └hiyoko.css
ならば以下2行を入れる
./markdownToDocuments/marp_trial/css/hiyoko.css ./markdownToDocuments/marp_trial/css/basic.css
HTML を生成した後それを元に PDF や pptx を生成しているようなので HTML を生成してその構造を確認しながら CSS を書くのが吉っぽい。
hiyoko.cssを読み込んでこのREADME.mdをビルドした例:OUTPUT_SAMPLE.html
HTML をまず生成した後、それをプリントアウトするようにして PDF や PPTX を生成しているようだ。 そのためか、生成された PPTX はページ全体が1つの画像となっており、再編集ができない。
すなわち、最初に挙げた要望が「再編集不能な PDF ではなく再編集可能な PPTX で」であれば このアプローチは上手くいかない。