用途:面向 draw.io 图表的编辑与转换技能,适用于 .drawio XML 的创建、修改与审查,以及导出 PNG 用于文档与演示。
主要能力:只编辑 .drawio 文件,不直接编辑 .drawio.png;通过预提交钩子自动生成 .drawio.png 供幻灯片使用。可设置默认与元素级字体,如 mxGraphModel 的 defaultFontFamily="Noto Sans JP",并在 style 中显式指定 fontFamily。支持布局调整,按 mxGeometry 的 x、y、width、height 修改坐标;元素中心坐标 = y + (height / 2)。
转换用法:批量执行 mise exec -- pre-commit run --all-files;指定文件执行 mise exec -- pre-commit run convert-drawio-to-png --files assets/my-diagram.drawio;直接运行脚本 bash ${SKILL_DIR}/scripts/convert-drawio-to-png.sh assets/diagram1.drawio。内部命令为 drawio -x -f png -s 2 -t -o output.drawio.png input.drawio(-x 导出、-f png 格式、-s 2 二倍分辨率、-t 透明背景、-o 输出路径)。
AWS 图标:使用最新官方图标(mxgraph.aws4.*),可用脚本检索,如 python ${SKILL_DIR}/scripts/find_aws_icon.py ec2、python ${SKILL_DIR}/scripts/find_aws_icon.py lambda。
设计要点:清晰、一致、准确;为元素加标签,箭头优先使用单向箭头,方向明确;保证颜色对比,除颜色外辅以图案;复杂系统采用渐进披露,分为上下文图、系统图、组件图、部署图、数据流图、时序图;图表中包含标题、描述、最后更新、作者与版本元数据。实践建议:去掉 background="#ffffff" 以适配主题;字体约 18px 提升 PDF 可读性;日文每字符预留 30-40px 宽度;箭头置于底层避免遮挡标签,与标签保持至少 20px 距离;文本标签连接需用 sourcePoint/targetPoint 显式坐标,edgeLabel 用 offset 调整偏移;背景框内元素至少留 30px 边距并考虑圆角与描边,必须目视检查 PNG 是否溢出。
检查清单包括背景透明、字号、箭头层级与不重叠、元素不溢出、AWS 名称与图标正确、无冗余元素、目视验证转换结果。在 reveal.js 幻灯片中可在 YAML 头部添加 auto-stretch: false 以保证移动端显示。
限制:资料未说明适用平台范围、是否收费以及价格;仅适用于 .drawio 文件编辑,不直接编辑 PNG。