export-pptx について
HTMLスライドを、各ページを画像にしたPPTXへ変換するスキルです。スピーカーノートも追加できますが、PowerPoint上でスライド内容をネイティブ編集することはできません。
主な機能
- 01HTMLスライドを画像として出力
- 02スライドごとのノート追加
- 0316:9のPPTX出力
- 04JPEG圧縮オプション
活用シーン
- 01HTMLプレゼンテーションのPPTX変換
- 02ノート付きスライドの共有
- 03JPEGによる出力ファイルの縮小
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bluzir/ claude-code-design --skill export-pptxインストール後、Claude Code で/export-pptxを入力して読み込まれたか確認します。
詳細
PPTX のエクスポート
スクリーンショットベースの PPTX エクスポートです。<deck-stage> 内の各 <section> が 1 枚のスライドになります(1920×1080 の画像+任意のスピーカーノート)。
事前確認
Bash(which node)— 見つからない場合は、Node 20 以降をインストールするようユーザーに伝えますpackage.jsonにpptxgenjsとpuppeteerが含まれていることを確認します。含まれていない場合は、次を実行します。
(または、先にBash(npm install -D pptxgenjs puppeteer)/doctorを実行するようユーザーに伝えます)
手順
-
パスを解決します。
$0= デッキの HTML(必須)$1= 出力先(デフォルト:ベース名+.pptx)
-
エクスポートスクリプトを実行します。
Bash(node scripts/export-pptx.mjs "<input>" "<output>") -
ファイルサイズとパスを報告します。
スクリプトの依存関係
scripts/export-pptx.mjs が存在する必要があります。存在しない場合は作成します(テンプレートは仕様の §4.5 を参照するか、ユーザーに /doctor の実行を依頼してください)。
スクリプトの動作
- ヘッドレス Chromium(puppeteer)を起動します
- デッキの HTML を 1920×1080 で読み込みます
<deck-stage>.totalSlidesを読み取ります- 各スライドについて、
goToSlide(i)を実行し、noscaleを設定して、page.screenshotでクリップ領域 0,0,1920,1080 のスクリーンショットを撮影します #speaker-notesの JSON(存在する場合)を読み取り、スライドごとのノートとして添付しますpptxgenjsを使って.pptxを作成します(16:9 のレイアウトで、各スライドに PNG 背景を 1 枚配置)
注意事項
- 画像のファイルサイズは大きくなる場合があります。1920×1080 では、1 スライドあたり 5 MB が通常です
- ファイルサイズを小さくするには、スクリプトに
--jpeg 0.8を渡します(品質 80% の JPEG に圧縮します) - PowerPoint では編集できません。各スライドはラスター画像です。ネイティブ編集可能なエクスポートは、v3 ではスキルがサポートしていません
コメント
Markdown 対応