用 Python + pywin32 通过 COM 驱动本机 CorelDRAW,把吊牌 / 售后卡 / 服饰卡从配置或模板一键自动产出为印刷级文件。
CDR AUTo 面向吊牌印刷生产,用 Python 通过 COM 自动化控制 CorelDRAW X4 / 2020。一份 JSON 配置或「模板 + 替换表」即可自动绘制卡片并导出:原样可编辑的 .cdr、全文转曲的 .cdr(X4 格式)、CMYK 印刷 PDF 与 PNG 预览,全程 CMYK 色值,兼容 X4 / 2020 双版本。
| 维度 | 说明 |
|---|---|
| 纯生成 | 由 JSON 配置直接绘制文字 / 线段 / 矩形 / 圆 / 字段线 / 复选框 / 打孔,越界自动防护 |
| 模板填充 | 按语义字段填充模板内容,支持内容匹配 / 规范化 / 序号三种模式,越界自动缩放 |
| 模板登记 | 自动分析模板结构,生成卡组聚类、字段清单与孔位策略 |
| 多模板融合 | 跨模板摘取元素组装新吊牌 |
| 双源文件导出 | 原样可编辑 .cdr + 全文转曲 .cdr(另存为 X4 格式) |
| 印刷输出 | CMYK、文字转曲 PDF + PNG 预览 |
| 细节处理 | NOTES 注释层自动跳过;缺失字体自动枚举告警 |
# 环境:Windows + CorelDRAW X4/2020 + 64 位 Python 3.11+
python -m pip install pywin32
# 环境自检
python scripts/cdr_env_check.py
# 纯生成(配置示例见 scripts/example_card.json)
python scripts/hangtag_generator.py --config configs/demo_mapping.json --out 输出目录
# 模板填充(语义字段)
python scripts/hangtag_fill.py --template 模板.cdr --meta templates/<id>/meta.json --values 字段值.json --out 输出目录 --name 吊牌名适用场景:吊牌 / 售后卡 / 服饰卡需要按配置或模板批量、稳定地产出印刷文件的印刷车间,替代手工逐张排版。
- Python 3.11+ · pywin32(COM 自动化)
- CorelDRAW X4 / 2020
- 输出格式:.cdr(X4 格式)· CMYK PDF · PNG 预览
- 无头服务器 / 远程会话能用吗? 需 Windows + 交互式桌面会话(COM 驱动本机 CorelDRAW),无头服务器不可用。
- 可以多任务并行跑吗? COM 为单实例,任务需串行执行。
- CubicDev1/corel-mcp —— CorelDRAW Live MCP(Apache-2.0),架构参考,借鉴其精简工具目录理念
- wuguirongsg/coreldraw-mcp —— 模板批量与 preflight 流程参考
各绘制组件与越界防护的详细实现见源码,本文不做展开。
说明:修改记录仅记录文档维护变更,不计入版本更新。
| 日期 | 修改内容 |
|---|---|
| 2026-10-05 | README 精简为项目介绍,补充 topics 标签 |
| 2026-10-05 | README 美化丰富:补充在线体验与参考来源,完善使用说明 |