Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计通过

drawio-to-png绘图转 png

Agent Skill

drawio-to-png 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

776

周安装

33

GitHub Stars

公开资料未说明

下载量

272
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:drawio-to-png(绘图转 png)
来源仓库:https://github.com/huyansheng3/ppt-skills
仓库路径:skills/drawio-to-png
安装命令:
npx skills add https://github.com/huyansheng3/ppt-skills --skill drawio-to-png
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/huyansheng3/ppt-skills --skill drawio-to-png

简介

将 Draw.io 文件转换为高分辨率 PNG 图像。

  • 支持批量处理和透明背景设置,适用于文档发布。
  • 使用命令行接口或浏览器自动化完成格式转换。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。
  • 需确认目标分辨率和输出路径以避免文件覆盖风险。
  • drawio-to-png 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Draw.io to PNG Converter

Convert draw.io diagram files to high-resolution PNG images using draw.io desktop command-line interface or headless browser automation.

Overview

This skill provides guidance for converting draw.io format files (.drawio,.dio,.xml) to high-quality PNG images. It supports batch conversion, custom resolution settings, transparent backgrounds, and page selection for multi-page diagrams.

When to Use

Use this skill when:

  • Converting draw.io diagrams to PNG for documentation
  • Exporting diagrams for presentations or articles
  • Generating images from draw.io files for web publishing
  • Batch processing multiple diagram files
  • Creating high-DPI images for print materials

Trigger Phrases

  • "convert drawio to png"
  • "export drawio diagram"
  • "generate png from drawio"
  • "drawio导出png"
  • "转换drawio图片"
  • "drawio转图片"
  • "生成高清drawio图片"
  • "批量导出drawio"

Conversion Methods

Method 1: Using draw.io Desktop CLI (Recommended)

The official draw.io desktop application provides a command-line interface for conversion.

Installation:

# macOS
brew install --cask drawio

# Or download from: https://github.com/jgraph/drawio-desktop/releases

Basic Conversion:

# Convert single file
/Applications/draw.io.app/Contents/MacOS/draw.io -x -f png -o output.png input.drawio

# With custom scale (higher DPI)
/Applications/draw.io.app/Contents/MacOS/draw.io -x -f png -s 2 -o output.png input.drawio

# Transparent background
/Applications/draw.io.app/Contents/MacOS/draw.io -x -f png --transparent -o output.png input.drawio

# Export specific page (for multi-page diagrams)
/Applications/draw.io.app/Contents/MacOS/draw.io -x -f png -p 0 -o output.png input.drawio

Parameters:

  • -x: Export mode
  • -f png: Output format (png)
  • -o: Output file path
  • -s <scale>: Scale factor (1.0 = 100%, 2.0 = 200%, etc.)
  • --transparent: Transparent background
  • -p <page>: Page index (0-based) for multi-page diagrams
  • -w <width>: Custom width in pixels
  • -h <height>: Custom height in pixels
  • --border <size>: Border size in pixels

Method 2: Using Puppeteer with draw.io Web

Use headless browser automation to render diagrams via draw.io web interface.

Installation:

npm install puppeteer

Conversion Script (see scripts/convert-with-puppeteer.js):

const puppeteer = require('puppeteer');
const fs = require('fs');
const path = require('path');

async function convertDrawioToPng(inputPath, outputPath, options = {}) {
  const {
    scale = 2,
    transparent = true,
    page = 0
  } = options;

  const browser = await puppeteer.launch();
  const browserPage = await browser.newPage();

  // Set viewport for high DPI
  await browserPage.setViewport({
    width: 1920,
    height: 1080,
    deviceScaleFactor: scale
  });

  // Read drawio file
  const drawioContent = fs.readFileSync(inputPath, 'utf8');
  const encoded = encodeURIComponent(drawioContent);

  // Load in draw.io viewer
  await browserPage.goto(`https://viewer.diagrams.net/?lightbox=1&edit=_blank#R${encoded}`);

  // Wait for diagram to render
  await browserPage.waitForSelector('.geDiagramContainer', { timeout: 10000 });
  await browserPage.waitForTimeout(1000);

  // Take screenshot
  const element = await browserPage.$('.geDiagramContainer');
  await element.screenshot({
    path: outputPath,
    omitBackground: transparent
  });

  await browser.close();
}

Method 3: Using @diagram.net/drawio-cli (Docker)

Official Docker-based CLI tool.

Installation:

docker pull rlespinasse/drawio-cli

Conversion:

docker run --rm -v "$(pwd):/data" rlespinasse/drawio-cli \
  -x -f png -s 2 -o /data/output.png /data/input.drawio

Workflow

Single File Conversion

  1. Detect draw.io file format

- Check if file exists and is valid (.drawio,.dio,.xml) - Verify file is XML format and contains draw.io structure

  1. Determine output path

- Default: same directory, same name with.png extension - Ask user if custom output path is needed

  1. Configure options

- Scale factor (default: 2 for high DPI) - Transparent background (default: true) - Page selection (if multi-page)

  1. Execute conversion

- Use draw.io CLI (Method 1) as primary method - Fall back to Puppeteer if CLI not available

  1. Verify output

- Check PNG file was created - Validate file size is reasonable - Show output path to user

Batch Conversion

  1. Scan directory for draw.io files find. -type f \(-name "*.drawio" -o -name "*.dio" -o -name "*.xml" \)
  2. Filter valid draw.io files

- Exclude non-diagram XML files - Check file content for draw.io structure

  1. Process each file

- Use same naming convention (replace extension with.png) - Apply consistent export settings - Track success/failure for each file

  1. Report results

- List successfully converted files - Report any failures with reasons - Show total count and output location

Common Use Cases

For Documentation

# Export with border for better visibility
drawio -x -f png -s 2 --border 10 -o docs/images/architecture.png architecture.drawio

For Presentation Slides

# High resolution with transparent background
drawio -x -f png -s 3 --transparent -o slides/diagram.png diagram.drawio

For Web Publishing

# Moderate resolution to balance quality and file size
drawio -x -f png -s 1.5 -o public/images/flowchart.png flowchart.drawio

Multi-page Diagrams

# Export all pages
for i in {0..4}; do
  drawio -x -f png -s 2 -p $i -o "output-page-$i.png" multi-page.drawio
done

Quality Settings

Scale Factor Guidelines

  • 1.0: Standard resolution (72-96 DPI) - web thumbnails
  • 2.0: High resolution (144-192 DPI) - standard export (recommended)
  • 3.0: Very high resolution (216-288 DPI) - presentations
  • 4.0: Print quality (288-384 DPI) - professional printing

File Size Considerations

  • Higher scale = larger file size
  • Transparent background slightly increases size
  • Complex diagrams with many shapes = larger files
  • Consider compression for web use

Error Handling

Common Issues

  1. draw.io CLI not found

- Check if draw.io desktop is installed - Verify path: /Applications/draw.io.app/Contents/MacOS/draw.io (macOS) - Try alternative methods (Puppeteer or Docker)

  1. Invalid draw.io file

- Verify file is XML format - Check for corrupted file content - Open in draw.io desktop to validate

  1. Export fails silently

- Check disk space - Verify write permissions for output directory - Try with simpler diagram to isolate issue

  1. Blank or partial output

- Increase wait time for complex diagrams - Check for external image references - Verify all fonts are available

Best Practices

  1. Version Control

- Keep.drawio source files in version control - Regenerate PNG files on demand (don't commit) - Use CI/CD to auto-generate images

  1. Naming Convention

- Use same name for.drawio and.png files - Add suffix for different scales: diagram-2x.png, diagram-3x.png - Include page number for multi-page: flow-page-1.png

  1. Automation

- Create npm scripts or Makefile for batch conversion - Watch for file changes and auto-regenerate - Integrate with documentation build process

  1. Optimization

- Use appropriate scale for use case - Compress PNG files with tools like pngquant or optipng - Consider SVG export for web (smaller, scalable)

Alternative Formats

While this skill focuses on PNG export, draw.io also supports:

  • SVG: Vector format, scalable, smaller file size
  • PDF: Print-ready, preserves quality
  • JPEG: Smaller size, no transparency, lossy compression

Use scripts/convert.sh for flexible format selection.

References

See references/ directory for:

  • cli-reference.md: Complete draw.io CLI documentation
  • quality-guide.md: Detailed quality and DPI guidelines
  • automation-examples.md: Scripts for CI/CD integration

Examples

See examples/ directory for:

  • single-file.sh: Single file conversion example
  • batch-convert.sh: Batch conversion script
  • watch-and-convert.sh: File watcher for auto-conversion

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.33%
按下载量换算91

Claude

31.42%
按下载量换算85

Cursor

16.8%
按下载量换算46

Gemini CLI

10.05%
按下载量换算27

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills