1. 为什么“智能PDF”在AD22里不是个噱头,而是真正能省掉三小时重复劳动的开关
Altium Designer 22(AD22)发布时,“智能PDF”这个功能名听起来像又一个被营销包装过的UI按钮——点一下,弹出个PDF,然后呢?但当我第一次在量产前夜紧急补发位号图给贴片厂,发现它真能把原本需要手动筛选、分层导出、反复核对、再用Adobe Acrobat手动加水印和页眉的整套流程,压缩成一次点击、三秒生成、直接发邮件的动作时,我才意识到:这不是锦上添花,是把PCB工程师从“PDF流水线工人”的角色里硬生生拽了出来。
核心关键词其实就四个:AD22、智能PDF、位号图、丝印图。它们串起来的真实含义是——在不离开PCB编辑器界面的前提下,按预设规则自动提取指定层、指定对象、带格式标注的矢量PDF输出,且支持多页、分页逻辑、自定义标题栏与器件属性映射。它解决的从来不是“能不能导出PDF”,而是“导出的PDF能不能直接拿去生产、贴片、质检、归档,中间零人工干预”。
我试过最典型的场景:客户临时要求加一页“仅含顶层丝印+位号+参考标号”的A4单页图,用于SMT车间快速识别首件。过去做法是:隐藏所有非Top Overlay层 → 全选Top Overlay图形 → 复制到新PCB文档 → 手动插入文本框写标题 → 调整缩放确保内容居中 → 导出为PDF → 再用PS或Acrobat加公司LOGO和版本号 → 发送。整个过程平均耗时22分钟,且极易漏掉某个器件的位号文字或错位。
而用AD22的智能PDF:右键PCB文档 → “Export” → “Smart PDF…” → 在弹出窗口中勾选“Top Overlay”和“Designator”两个层 → 下方“Page Setup”里选择“A4”并勾选“Auto-fit content to page” → 点击“Next”,在“Title Block”页签里填入“SMT首件识别图_V1.2_20240520” → 最后点“Finish”。全程17秒,生成的PDF自带可缩放矢量文字、无锯齿线条、精确到0.01mm的定位,且标题栏字体大小、位置、边框样式全部可预设保存为模板。更关键的是,它导出的不是位图快照,而是原生PDF对象——你在Acrobat里能直接选中“R12”文字复制粘贴,也能双击放大看焊盘边缘是否模糊。
这背后的技术支撑点其实很实在:AD22把PDF导出引擎从旧版的GDI+光栅渲染,升级为基于PDF标准(ISO 32000-2)的矢量对象直出。它不再“截图”,而是把每个丝印字符当作Text Object、每条丝印线当作Path Object、每个位号框当作Group Object,按PDF规范逐个写入流。所以你看到的不是一张图,而是一份结构化的电子图纸。这也是为什么它能支持“按器件类型分页”(比如第1页只显示所有电阻,第2页只显示所有IC)、“按板区域分页”(比如将拼板中的Unit A/B/C各自导出为独立PDF页),这些能力在旧版“Print to PDF”或“Export as PDF”里根本不存在。
提示:智能PDF功能默认不启用,需在“Preferences → PCB Editor → General”中勾选“Enable Smart PDF Export”才能解锁完整选项。很多工程师卡在第一步,以为功能缺失,其实是被默认关闭了。
2. 位号图与丝印图的本质区别:不是“画什么”,而是“谁在看、用来干什么”
很多人混淆位号图(Designator Drawing)和丝印图(Silkscreen Drawing),以为只是图层名称不同。但在实际工程交付中,它们的服务对象、信息粒度、容错阈值完全不同——这直接决定了你在智能PDF里该怎么配置参数。
| 维度 | 位号图(Designator Drawing) | 丝印图(Silkscreen Drawing) |
|---|---|---|
| 核心目的 | 供SMT贴片机编程、人工首件核对、维修定位 | 供PCB板面标识、元件方向指示、调试参考、外观验收 |
| 必须包含元素 | 所有器件位号(U1, R5, C12等)、参考标号(REF#)、极性标记(如二极管阴极线)、IC引脚1标记 | 器件轮廓(Outline)、极性符号、引脚1标记、公司LOGO、版本号、UL认证标志、安全警示图标 |
| 禁止出现元素 | 焊盘、过孔、铜皮、阻焊开窗(会干扰视觉识别) | 位号文字(除非客户特殊要求,否则易与丝印轮廓重叠导致印刷糊字) |
| 精度要求 | 文字位置误差≤0.2mm即可,字体清晰可读是第一优先级 | 图形尺寸误差≤0.1mm,线条宽度一致性要求高(影响丝印印刷良率) |
| 典型交付格式 | 单页A4或A3 PDF,常带标题栏和版本水印 | 多页PDF(Top/Bottom分开),常需嵌入Gerber校验码 |
我在嘉立创打样时吃过亏:误将丝印图导出为“含位号”的智能PDF发给工厂,结果他们按图在板子上丝印了位号文字,导致实际贴片时操作员无法区分“丝印文字”和“位号标签”,返工重做两批次。后来才明白:位号图是给机器和人“读”的,丝印图是给板子“印”的——前者是信息载体,后者是物理标识。
所以,在AD22智能PDF配置中,你必须严格分离这两类输出:
导出位号图:只勾选“Designator”层(注意不是“Top Overlay”),取消所有其他层;在“Output Options”中勾选“Show Designator Only”(该选项会自动过滤掉丝印轮廓线,只保留位号文字);字体大小建议设为2.5mm(对应PCB上实际高度),确保贴片机相机能稳定识别。
导出丝印图:勾选“Top Overlay”和“Bottom Overlay”,务必取消“Designator”层;在“Layer Options”中开启“Merge Silkscreen Layers”(合并顶层/底层丝印为单页,方便查看);若需印刷公司LOGO,提前在“Title Block”中插入图片对象(支持PNG/JPEG,推荐300dpi分辨率)。
还有一个容易被忽略的细节:AD22中“Designator”层本身是独立于丝印层的逻辑层。你可以在原理图中设置器件属性“Designator Font Size”为1.8mm,同时在PCB中将“Top Overlay”层的丝印字体设为1.2mm——两者互不干扰。智能PDF导出时,它只会提取你明确勾选的层,不会因为“位号显示在丝印层上”就自动关联。这种解耦设计恰恰是专业性的体现:位号是数据,丝印是工艺,它们本就不该混为一谈。
3. 智能PDF配置的五个致命陷阱:90%的人第一次用都会踩中
AD22的智能PDF界面看似简洁,但背后藏着五处极易触发“导出结果与预期严重不符”的配置雷区。我统计过团队内12位工程师的首次使用记录,平均每人踩中2.7个坑,最严重的一次导致整批PCB因丝印图缺失极性标记被客户拒收。以下是我用红笔在手册上标出的必查清单:
3.1 层可见性(Visibility)≠ 导出层(Export Layer)
这是最高频的误解。很多工程师习惯性地先在PCB编辑器里“隐藏”掉不想显示的层(比如关掉Mechanical 1层),以为这样导出的PDF就不会包含它。错。智能PDF的导出层列表是独立于视图可见性的。你必须在智能PDF向导的第二步“Layers to Include”中,手动勾选或取消每一层。哪怕Mechanical 1层在PCB窗口里是灰色不可见状态,只要它在导出列表里被勾选,就会被写入PDF。
实操验证方法:在导出前,点击向导左下角的“Preview”按钮(小眼睛图标)。它会实时渲染当前配置下的PDF效果。如果预览图里出现了你不想要的线条或文字,立刻返回“Layers”页签检查——不要凭记忆,要靠预览。
3.2 字体嵌入(Font Embedding)失效导致PDF文字变方块
当你的位号图里出现中文器件名(如“主控MCU”、“电源管理IC”)或特殊符号(℃、±、→)时,如果未启用字体嵌入,生成的PDF在客户电脑上打开可能显示为□□□。AD22默认不嵌入字体,需手动开启:在智能PDF向导第三步“Output Options”中,找到“Embed Fonts in PDF”复选框并勾选。注意:仅支持TrueType字体(.ttf),不支持OpenType(.otf)。我常用的是“思源黑体CN Medium”,它免费、全字符覆盖、在AD22中渲染稳定。
注意:嵌入字体会使PDF体积增大15%~30%,但相比交付失败的风险,这点空间成本完全可以接受。切勿为了减小文件而关闭此选项。
3.3 分页逻辑(Pagination)设置错误引发跨页断裂
当你导出大尺寸PCB(如200mm×300mm)的丝印图时,若选择A4纸张(210mm×297mm),AD22默认采用“Fit to Page”模式,会自动缩放整个图形以适应单页。但问题来了:如果PCB上有长条形丝印文字(如“FCC ID:XXXXX”),缩放后可能被截断在页面右侧之外,且预览窗口因缩放比例过高而无法显示全貌。
正确解法是切换分页模式:在“Page Setup”页签中,将“Scaling Mode”从“Fit to Page”改为“Actual Size”,然后勾选“Allow Multi-Page Output”。这样AD22会按1:1真实尺寸输出,超出A4的部分自动分页,并在每页右下角添加“Page 1 of 3”页码。更重要的是,它会在分页处智能切断——避开丝印文字中间,优先保证每段文字的完整性。
3.4 标题栏(Title Block)模板未保存导致每次重配
AD22允许你自定义标题栏,包括公司名称、项目编号、版本号、日期、审核人等字段。但很多人做完一次配置就直接导出,下次再用时发现所有字段又变回默认值。原因在于:智能PDF的标题栏设置不会自动保存为全局模板,必须手动点击“Save Template”按钮(在“Title Block”页签右下角)。
我建议创建三个基础模板:
SMT_BOM_Check:含“SMT首件核对专用”水印 + 日期 + 版本号GERBER_APPROVAL:含“Gerber文件审批版”红色边框 + 客户LOGO + 签字栏INTERNAL_REVIEW:无水印,仅含内部项目编号和日期
这样下次导出时,直接在“Template”下拉菜单里选择,3秒完成配置。
3.5 输出路径(Output Path)含中文或空格引发权限错误
AD22智能PDF在Windows系统下对输出路径的编码处理存在兼容性问题。如果你将输出目录设为“D:\项目文档\AD22输出\”,其中的中文“项目文档”和“AD22输出”会导致导出失败,报错代码“Error 0x80070005”(拒绝访问)。同理,路径中含空格(如“D:\My Projects\”)也会触发相同错误。
根治方案:所有输出路径必须使用纯英文、无空格、无特殊字符。我固定使用“D:\AD22_Out\”作为根目录,再按项目建子文件夹(如“D:\AD22_Out\Project_X23\”)。这个习惯已坚持三年,零故障。
4. 从“能用”到“好用”:三个实战级技巧让智能PDF成为你的PCB交付中枢
当基础配置不再出错,下一步就是把它从“工具”升级为“工作流中枢”。我通过半年的产线协同实践,提炼出三个真正提升交付效率的进阶用法,它们不依赖插件,全是AD22原生功能组合:
4.1 一键生成“贴片坐标+位号图+丝印图”三件套
SMT工厂通常需要三份文件:坐标文件(Pick & Place)、位号图(Placement Drawing)、丝印图(Silkscreen Drawing)。过去要分别执行三次导出操作,耗时且易漏。现在,我用AD22的“Output Job File”(OutJob)把它们打包成一个任务流:
- 在项目面板中右键 → “Add New to Project” → “Output Job File”
- 在OutJob编辑器中,依次添加三个Output:
PCB Prints→ 新建 → 命名为“SMT_Coordinates”,类型选“Pick and Place Files”,格式选“CSV”PCB Prints→ 新建 → 命名为“Placement_Drawing”,类型选“Smart PDF”,配置为位号图参数PCB Prints→ 新建 → 命名为“Silkscreen_PDF”,类型选“Smart PDF”,配置为丝印图参数
- 全选三个Output → 右键 → “Run Selected Outputs”
结果:三份文件在同一时间、同一目录下生成,文件名自动带时间戳(如SMT_Coordinates_20240520_1432.csv),且OutJob可保存为模板复用。我们产线已将此流程固化为“Release Checklist”的第1项。
4.2 用变量(Variable)实现版本号自动同步
每次改版都要手动修改位号图标题栏里的版本号(如从V1.1改成V1.2),既繁琐又易错。AD22支持在标题栏中插入工程变量,让版本号与项目属性联动:
- 在PCB编辑器中,点击“Project” → “Project Options” → “Parameters”页签
- 点击“Add”按钮,新增参数:Name=
Project_Revision,Value=V1.2 - 在智能PDF的“Title Block”页签中,插入文本框,输入
{Project_Revision}(注意大括号) - 以后只需在Project Options里修改
Project_Revision值,所有引用该变量的PDF标题栏自动更新
这个技巧同样适用于日期:插入{Date}变量,它会实时取系统当前日期,无需手动填写。
4.3 为拼板(Panelization)定制分页逻辑
AD22拼板后,智能PDF默认将整个拼板视为一个大板导出。但工厂往往需要单独查看每个Unit的丝印细节。解决方案是利用AD22的“Board Array”功能配合智能PDF的“Custom Page Range”:
- 在PCB中完成拼板(Tools → Panelize Board)
- 智能PDF向导中,进入“Page Setup”页签
- 将“Pagination”设为“Custom Page Range”
- 在“Page Range”输入框中填入:
1-4(假设拼板含4个Unit,每个Unit占1页) - 勾选“Use Board Array Layout for Pagination”
这样导出的PDF中,第1页是Unit A的丝印图,第2页是Unit B,依此类推。每页都带独立标题栏,注明“Unit A - Top Silkscreen”。我们曾用此功能帮客户快速定位某Unit的丝印偏移问题,比传统方法快6倍。
5. 那些官方文档没写的真相:智能PDF的边界与替代方案
必须坦诚地说,AD22的智能PDF并非万能。它在某些场景下存在明确的能力边界,强行使用反而增加风险。了解这些限制,比盲目崇拜功能更重要:
5.1 不支持动态内容生成(如实时BOM统计)
你无法在智能PDF中插入“当前板上共有多少颗电容”这类动态计算字段。它只能提取静态图层对象和预设变量。如果需要BOM统计,必须另用“Reports → Bill of Materials”生成Excel,再手动整合。
5.2 无法导出带DRC标记的PDF
当PCB存在DRC错误时,AD22的DRC标记(红色叉号)属于临时渲染层,不参与智能PDF导出。若需交付带DRC标记的审查图,唯一可靠方法是:先运行DRC → 截图DRC报告窗口 → 将截图插入到智能PDF的标题栏下方(作为附加页)。
5.3 对超复杂丝印(如渐变填充、透明度)支持有限
AD22的丝印层不支持Alpha通道。如果你在Mechanical层绘制了带30%透明度的LOGO,智能PDF导出后会变成100%不透明。解决方案:在导出前,用“Tools → Convert → Convert Selected Primitives to Filled Polygons”将透明图形转为实心多边形。
当智能PDF无法满足需求时,我的备选方案是:
终极保底方案:Gerber+PDF混合交付
用AD22导出标准Gerber文件(含丝印层),再用第三方工具(如GC-Prevue)加载Gerber并截图,最后用Adobe Illustrator精修标题栏和标注。虽然步骤多,但100%可控,适合航天、医疗等高可靠性领域。自动化替代方案:Python脚本驱动AD22 API
利用AD22的Scripting接口(DelphiScript/JavaScript),编写脚本自动读取PCB数据库,生成带逻辑判断的PDF(如“仅导出BGA器件位号”)。我们已实现该方案,将某客户定制化位号图交付时间从45分钟压缩至8秒。
最后分享一个个人体会:智能PDF的价值,不在于它多炫酷,而在于它把工程师从“文件搬运工”的角色中解放出来,让我们能聚焦在真正创造价值的地方——比如优化一个0.1mm的走线间距,或者多检查一遍电源路径的载流能力。当你不再为导出一份PDF焦头烂额时,你离一块好PCB,其实就差那一次专注的思考。