mcpField
V
visio-image-rebuilder

visio-image-rebuilder

github.com/pengjunchi0ドキュメント1.1k154 回インストール10 週間前に更新
リポジトリ

visio-image-rebuilder について

Visio Image Rebuilderは、参照図を編集可能なVisioコンテンツとして再構成するスキルです。ネイティブ図形による描画、スタイル調整、形式の書き出しを案内し、画像に平坦化されていないことも確認します。

主な機能

  1. 01Visioのネイティブ図形で図を再構成
  2. 02パネルとローカル座標の調整
  3. 03Visio COMによる編集の自動化
  4. 04範囲を限定したパッケージXML編集
  5. 05PNG、SVG、PDF、PPTXへの書き出し
  6. 06編集可能性と出力ファイルの確認

活用シーン

  1. 01参照画像から図を再構成
  2. 02既存のVisio図形のスタイル変更
  3. 03確認済みVisioページを別形式で出力

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/pengjunchi0/codex-visio-paper-figure-skill --skill visio-image-rebuilder

インストール後、Claude Code で/visio-image-rebuilderを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
README.md
agents/
openai.yaml
references/
rebuild-guidelines.md
scripts/
visio_page_tools.ps1
visio_rebuild_scaffold.ps1
visio_export_formats.ps1

詳細

Visio 画像の再構築

基本ルール

参照画像を編集可能な Visio コンテンツとして再現します。参照画像全体をページに挿入して、再構築の依頼に応えることはできません。参照画像の埋め込みが許可されるのは、一時的なロック済みトレースレイヤーとしてのみです。納品前に削除または非表示にし、最終的な .vsdx がネイティブの図形、テキスト、コネクタ、グループで構成されている必要があります。

.vsdx を信頼できる唯一のソースとして扱います。Visio ページを再構築またはスタイル変更し、ネイティブ編集可能であることを確認してから、PNG、SVG、PDF、PPTX にエクスポートしてください。

ワークフロー

  1. 入力を確認します。

    • 対象の .vsdx、参照画像、要求されている出力形式、出力ディレクトリのパスを確認します。
    • 対象ファイルがすでに存在する場合は、編集前に現在の Visio ページを PNG にエクスポートします。
    • .vsdx パッケージを調べて、ページ、メディアエントリ、図形数を確認します。
    • 書き込む前に、対象ファイルをバックアップします。
    • Visio がすでに開いている場合は、対象ドキュメントだけを閉じるか、応答しないプロセスを終了する前に確認を求めます。
  2. 参照画像を読み解きます。

    • ページの向き、パネルの境界、モジュールの色、キャプション、テキストの階層、矢印、破線、繰り返しのモチーフを特定します。
    • オブジェクト一覧を作成します。コンテナー、タイトル、処理ボックス、アイコン、チャート、グラフ、数式、コネクタ、キャプションを含めます。
    • まずキャンバスを調整し、次に各主要パネルまたはサブパネルを、左上の境界または四隅の座標を明示して調整します。
    • 複数のパネルに内容が密集した図では、パネル内部をパネル基準の正規化座標で描画します。
    • タスクが全面的な再構築、色やスタイルの適用、部分編集、エクスポートのみのいずれかを判断します。
    • 高密度な科学図では、まず大まかなパネル配置図を作成し、その後にパネル内部を描画します。小さな装飾要素から始めないでください。
  3. ネイティブ編集には Visio の自動化を優先します。

    • Visio がインストールされている場合は、Windows で COM 自動化を使用します。
    • DrawRectangle、DrawOval、DrawLine、小さなソースアセットに限った Page.Import、および FillForegnd、LineColor、LineWeight、Char.Size、Char.Color、Rounding などの図形セルを使用します。
    • 壊れやすい編集には、明示的な座標と ID を使用します。
    • グループ構造には意味を持たせます。主要パネル、サブモジュール、繰り返しのブロック、凡例などを適切にグループ化します。
    • 入れ子になったモジュールでは、RectRel、TextRel、LineRel、OvalRel などのヘルパーを使用し、子図形を調整済みの親パネル内に収めます。
  4. パッケージ XML の編集は、範囲が限定された決定的な変更にのみ使用します。

    • 既存の図形の色の変更、フォントテーブルの置き換え、既知のセル値の変更には XML パッチが適しています。
    • Visio XML の順序を維持します。図形レベルの Cell ノードは、Section、Text、または子の Shapes より前に配置する必要があります。
    • COM 自動化を利用できない場合を除き、複雑なジオメトリを生の XML で再構築しないでください。
  5. 確認済みの Visio ソースから、要求された形式にエクスポートします。

    • エクスポートのみのタスクには scripts/visio_page_tools.ps1 を使用します。
    • 作成物をすぐに生成する必要がある再構築には、-ExportFormats を指定して scripts/visio_rebuild_scaffold.ps1 を使用します。
    • ベクター形式での Web や原稿への受け渡しには SVG、レビューや印刷には PDF、プレゼンテーション資料には PPTX を優先します。
    • PPTX の作成には、利用可能な場合は PowerPoint COM を使用します。生成されたスライドには Visio ページのレンダリングが含まれ、通常は SVG から挿入されます。
  6. 1 つの判定基準を過信せずに確認します。

    • 可能な場合は、編集後に少なくとも 1 つのプレビューをエクスポートします。
    • .vsdx パッケージを調べ、サイズが元画像と同じ参照 PNG/JPG が visio/media に残っていないことを確認します。
    • 図形数と代表的なテキストラベルを確認します。
    • 主要パネルが重なっていないこと、子図形が意図したパネルの境界内に収まっていることを確認します。
    • 要求された各出力ファイルが存在し、空でないことを確認します。
    • Visio の自動化が応答しなくなった場合は、安全に停止し、可能であればドキュメントを閉じて、ファイルが実際に変更されたかどうかを報告します。

実装パターン

全面的に再構築する場合は、次の処理を行うスクリプトを生成します。

  • Visio COM で対象の .vsdx を開きます。
  • タイムスタンプ付き、または内容が分かる名前のバックアップを保存します。
  • ユーザーの希望に応じて、ページをクリアするか複製します。
  • 参照画像のアスペクト比に合わせてページサイズを設定します。
  • 左上を基準とした参照座標を Visio 座標に変換し、ネイティブ図形を描画します。
  • 複雑な領域には調整済みのパネル境界を設定し、その内部にはパネル内の座標を使います。
  • 四角形、テキストボックス、楕円、線、矢印、ミニグラフ、グラフノード、画像風のスタックに再利用可能なヘルパーを追加します。
  • ドキュメントを保存し、指定された形式でエクスポートします。

全面的な再構築スクリプトを作成する際は、scripts/visio_rebuild_scaffold.ps1 から始めます。これをワークスペースにコピーし、スキルのコピーを編集するのではなく、Draw-ReferenceFigure 関数をカスタマイズします。

スタイルを移す場合は、次の処理を行うスクリプトを生成します。

  • 既存の図形 ID、テキスト、おおよそのジオメトリ、塗りつぶし色、線の色を読み取ります。
  • テキストとグループのコンテキストに基づいて、既知のモジュールを対象のパレットに割り当てます。
  • 既存の図形に、塗りつぶし、枠線、文字色、線のパターン、フォントの変更を適用します。
  • ユーザーからレイアウト変更を求められない限り、位置を変更しません。
  • .vsdx の保存と確認を済ませてからエクスポートします。

エクスポートのみの依頼では、次を実行します。

powershell -ExecutionPolicy Bypass -File scripts\visio_page_tools.ps1 `
  -VsdxPath "C:\path\figure.vsdx" `
  -ExportFormats svg,pdf,pptx `
  -OutputDir "C:\path\exports" `
  -InspectPackage

再構築と複数形式へのエクスポートを行う場合は、次を実行します。

powershell -ExecutionPolicy Bypass -File scripts\visio_rebuild_scaffold.ps1 `
  -VsdxPath "C:\path\figure.vsdx" `
  -PageW 16 `
  -PageH 9 `
  -RefW 1600 `
  -RefH 900 `
  -PreviewPath "C:\path\exports\figure.png" `
  -ExportFormats svg,pdf,pptx `
  -OutputDir "C:\path\exports"

安全チェックリスト

  • ワークスペース外に書き込む前にバックアップを作成します。
  • パッケージを直接編集する前に、対象ファイルをロックしている開いた状態の Visio ドキュメントを閉じます。
  • 無関係なユーザーファイルを削除したり、変更を取り消したりしないでください。
  • 以前の試行で参照画像を埋め込んでしまった場合は、バックアップから復元するか、続行する前に画像図形を削除します。
  • 最終ファイルがネイティブの編集可能な図形か、埋め込み画像かをユーザーに明確に伝えます。
  • PPTX エクスポートがネイティブの PowerPoint 図形ではなく、レンダリングされたスライドである場合は、その旨をユーザーに伝えます。

受け入れ基準

Visio の再構築は、次の条件を満たす場合にのみ受け入れ可能です。

  • 主要なパネルの位置、流れの方向、キャプション、モジュールの階層が、ひと目で参照画像と一致していること。
  • 主要なパネルが調整済みの境界に沿って配置され、サブモジュールのずれ、衝突、パネル間の明らかな重なりがないこと。
  • テキストが編集可能で、一貫性のある学術向けフォント(通常は Times New Roman)が使われていること。
  • 繰り返し使われるモチーフが、貼り付けたラスター画像の切り抜きではなく、再利用可能なネイティブ図形で表現されていること。
  • 最終的な .vsdx パッケージの visio/media に、ページ全体を覆うラスター参照画像が含まれていないこと。
  • 指定された PNG/SVG/PDF/PPTX の成果物が、保存済みの .vsdx からエクスポートされ、空でないこと。
  • プレビューのエクスポートまたはパッケージの検査を実施していること。実施しなかった場合は、その理由を最終回答に明記すること。

参考リソース

一般的な検査、バックアップ、プレビューのエクスポート、複数形式へのエクスポート、パッケージチェックには scripts/visio_page_tools.ps1 を使います。カスタムタスクスクリプトで再利用可能なエクスポート用ヘルパーが必要な場合は、scripts/visio_export_formats.ps1 を使います。ネイティブ図形を描画するスクリプトは、scripts/visio_rebuild_scaffold.ps1 を出発点として作成します。これには、左上を基準にしたグローバルヘルパーと、パネル内で使う調整済みヘルパーの両方が含まれています。図全体の再構築や、科学図を注意深く一対一で再現する必要がある場合は、references/rebuild-guidelines.md を読みます。

コメント