html2pptx — 機能一覧

HTML/CSS で書いたスライドを編集可能な PowerPoint(.pptx)へ変換するシステム。 スクリーンショット貼り付けではなく、変換後も PowerPoint 上でテキスト・図形・表をそのまま編集できます。

編集可能 PPTX 視覚ドリフト p95 ≤ 5px REST API / MCP / CLI 日本語編集 UI

🎨 変換エンジン

Chromium(Playwright)で実レンダリングして座標・寸法・スタイルを実測し、結果をネイティブな PowerPoint 要素として再構成します。

テキスト

  • run 単位の色・太字・斜体・下線・取消線・字間・行送り
  • CJK 混在時のフォント自動切替
  • 実測行数ベースのテキストボックス高さ

図形・装飾

  • 背景色・枠線・角丸・影・回転(transform-origin 対応)
  • linear / radial グラデーション(OOXML gradFill 直接挿入)

画像

  • data URI 画像、object-fit cover crop / contain の非中央 object-position
  • SVG・canvas は PNG 化して保持
  • 外部 URL は取得せず、ガイダンス警告+編集可能プレースホルダー

表・リスト

  • セル内のインライン装飾(太字・色付き等)を編集可能な run のまま出力
  • ネストしたリストのレベル別番号・ul/ol 切替・階層ビュレット

独自契約

  • data-h2p-text-group — 複数 span を 1 テキストボックスの行に
  • data-h2p-raster — 強制画像化
  • --width --height — 96px/in 等の物理サイズ指定

精度・フォント

  • autoTextBoxFit — 背景コンテナ検出+安全マージン補正
  • autoEmbedFonts — fsType ライセンス検査つきフォント埋め込み
全警告に要素ロケータ+機械可読コード 対立する2契約(ドリフト≤5px / マージン≥12px)で常時検証

🖥 ブラウザ編集 UI Slide Studio

ZIP を読み込んで、変換前のスライドをブラウザ上で仕上げる日本語 UI。

編集

  • ライブサムネイルによるスライド切替
  • クリック選択+インスペクタ(文字・タイポ・ボックス・塗り/枠線)
  • ドラッグ移動・コーナーリサイズ、1段 Undo
  • ソース(HTML/CSS)直接編集

変換フィードバック

  • 完了ジョブの警告を全件表示、クリックで該当要素へジャンプ+ハイライト
  • ZIP 読込時の事前診断、選択要素の静的変換ヒント

エクスポート

  • 経過時間・試行回数を表示するキャンセル可能ポーリング
  • 未保存編集の 3 択確認(適用 / 破棄 / キャンセル)
  • 署名付きダウンロード

設計

  • patch 方式編集モデル — 表示用状態が出力へ混入しない構造
  • ローカル単体エディタ(CLI edit)とも UI 資産を共有

🔌 API・連携

REST API 非同期ジョブ(作成→ポーリング)、ZIP 入稿(inspect→編集→変換)、HMAC 署名付きダウンロード(TTL)、idempotency、レート制限+利用量ヘッダ、Webhook、RFC 9457 エラー、OpenAPI(契約テストで実装と強制同期)、/api/status
認証・境界 API キー(sha256 ダイジェスト保存+h2p-api-keys 発行 CLI)、CORS 許可リスト、本番ガード(設定不備は起動拒否のフェイルクローズ)
ストレージ in-memory ⇄ S3 互換(Cloudflare R2 / S3 / MinIO)を環境変数で切替
MCP stdio / Streamable HTTP、エクスポート・診断・ドキュメント・テンプレート等 11 ツール
CLI convert / diagnose(exit code で CI ゲート)/ edit(ローカル編集ブリッジ)

🛡 品質・運用基盤

回帰・テスト

  • 比較 2 スイート(LibreOffice レンダリング比較)
  • ユニット 200+ / 機能スモーク 17 シナリオ / docker-smoke

CI

  • 整形 → 依存監査(high で fail)→ 型検査 → テスト → パッケージ検証

公開運用

  • Cloudflare Tunnel + 常駐エージェントによる無償公開(招待キー制)
  • Cloudflare Containers + R2 構成も配備済み(有償プランで切替可)

意思決定の記録

  • ADR 5 本+実装計画書(検証数値つき実施記録)
外部画像・リモートフォントは取得しない設計(SSRF 対策)