# screen-image-generator > HTMLモックアップからPNG画像を生成するスキル。 Playwrightを使用して高品質なスクリーンショットを作成し、画面設計書用の画像を自動生成します。 - Author: purinAtype - Repository: purinAtype/taskManagerApp - Version: 20251212031553 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-07 - Source: https://github.com/purinAtype/taskManagerApp - Web: https://mule.run/skillshub/@@purinAtype/taskManagerApp~screen-image-generator:20251212031553 --- --- name: screen-image-generator description: | HTMLモックアップからPNG画像を生成するスキル。 Playwrightを使用して高品質なスクリーンショットを作成し、画面設計書用の画像を自動生成します。 allowed-tools: Read, Glob, Bash, Write --- # Screen Image Generator HTMLモックアップをPNG画像に変換し、画面設計書で参照する画像を自動生成するスキル。 ## 概要 | 項目 | 内容 | |:---|:---| | **入力** | `docs/mockups/*.html` | | **出力** | `docs/screen/images/{画面ID}.png` | | **ツール** | Playwright (Chromium) | | **解像度** | 1280×800(デフォルト) | ## 処理フロー 1. **依存関係確認**: `node_modules/playwright` の存在を確認 2. **インストール**: 未インストールの場合、`npm install` を実行 3. **モックアップ検索**: `docs/mockups/*.html` を検索 4. **ファイル名変換**: モックファイル名 → 画面ID に変換 5. **スクリーンショット生成**: Playwrightでキャプチャ 6. **出力**: `docs/screen/images/` に保存 ## ファイル名変換ルール | モックファイル名 | 画面ID | 出力ファイル | |:---|:---|:---| | `01_task_list.html` | `SCR-TASK-001` | `SCR-TASK-001.png` | | `02_task_new.html` | `SCR-TASK-002` | `SCR-TASK-002.png` | | `03_task_detail.html` | `SCR-TASK-003` | `SCR-TASK-003.png` | | `04_task_edit.html` | `SCR-TASK-004` | `SCR-TASK-004.png` | | `05_error_404.html` | `SCR-CMN-001` | `SCR-CMN-001.png` | | `06_error_500.html` | `SCR-CMN-002` | `SCR-CMN-002.png` | ### 変換ロジック ``` 番号_画面名.html → SCR-{機能コード}-{連番}.png 機能コードの判定: - task_* → TASK - category_* → CAT - error_* → CMN - その他 → CMN ``` ## 実行方法 ### 全画面を生成 ```bash cd .claude/skills/screen-image-generator node generate.js ``` ### 特定画面のみ生成 ```bash node generate.js --file 01_task_list.html ``` ### オプション | オプション | 説明 | デフォルト | |:---|:---|:---| | `--file ` | 特定ファイルのみ処理 | 全ファイル | | `--width ` | ビューポート幅 | 1280 | | `--height ` | ビューポート高さ | 800 | | `--scale ` | デバイススケール(Retina対応) | 1 | | `--fullpage` | ページ全体をキャプチャ | false | ## 設定 ### デフォルト設定 ```javascript const config = { viewport: { width: 1280, height: 800 }, deviceScaleFactor: 1, fullPage: false, format: 'png' }; ``` ### Retina品質で生成する場合 ```bash node generate.js --scale 2 ``` ## 前提条件 1. **Node.js**: v18以上 2. **Playwright**: 自動インストール(初回実行時) ## 出力例 ``` 生成開始... [1/6] 01_task_list.html → SCR-TASK-001.png ✓ [2/6] 02_task_new.html → SCR-TASK-002.png ✓ [3/6] 03_task_detail.html → SCR-TASK-003.png ✓ [4/6] 04_task_edit.html → SCR-TASK-004.png ✓ [5/6] 05_error_404.html → SCR-CMN-001.png ✓ [6/6] 06_error_500.html → SCR-CMN-002.png ✓ 生成完了: 6ファイル 出力先: docs/screen/images/ ``` ## トラブルシューティング | 問題 | 原因 | 解決策 | |:---|:---|:---| | `Chromium not found` | ブラウザ未インストール | `npx playwright install chromium` | | 画像が真っ白 | ローカルリソース読み込み失敗 | HTMLの相対パスを確認 | | 日本語が文字化け | フォント未インストール | システムに日本語フォントをインストール | ## 関連ファイル | ファイル | 説明 | |:---|:---| | `SKILL.md` | 本ファイル(スキル定義) | | `generate.js` | Playwrightスクリプト | | `package.json` | Node.js依存関係 |