☰
PADS丝印导出DXF的坐标系适配与工程交付指南
2026/10/3 1:34:06 网站建设 项目流程

1. 为什么要把PADS里的丝印导出成CAD文件?这事儿真不是“多此一举”

在PCB设计圈里,我见过太多人把PADS导出DXF当成一个“临时救急”的小操作——比如工厂说“你得给我个CAD图来核对丝印位置”,或者结构工程师甩过来一句“把顶层丝印转成CAD,我要叠到外壳图上做干涉检查”。结果一试,发现导出来的文字全反了、坐标偏移几十毫米、字体变成乱码线条,最后只能手动描图,三小时干完本该五分钟解决的事。其实根本问题不在PADS本身,而在于丝印层(Silkscreen)和CAD绘图系统对“镜像”这件事的理解完全不同:PCB是给光刻机看的,丝印文字必须按最终焊板上的视觉方向输出;CAD是给机械加工或结构设计用的,它要的是物理空间中的真实坐标系。所以当你直接导出Top Silkscreen为DXF时,PADS默认按PCB制造视角输出——也就是“从元件面往下看”,而CAD软件(比如AutoCAD)打开后默认是“从图纸正面看”,两者Z轴朝向相反,文字自然就左右翻转了。这不是BUG,是底层坐标系逻辑差异。我去年帮一家医疗设备公司处理过一个案例:他们用PADS画完板子,导出Top Overlay DXF给模具厂做外壳开孔定位,结果所有字符镜像颠倒,模具CNC加工后丝印位置全错,返工损失两万块。后来我们彻底理清了路径:导出前必须明确用途——是给SMT贴片机做Mark点识别?还是给结构工程师做3D装配校验?或是给激光打标机生成刻字模板?不同用途,镜像策略、图层命名、文字矢量化方式全都不一样。所以这篇不讲“怎么点菜单”,而是带你吃透“为什么这么导”,把每一步背后的坐标变换、图层映射、字体嵌入逻辑掰开揉碎。你不需要会写脚本,但得知道哪个开关一开,整个DXF就从“能打开”变成“能直接用”。

2. PADS导出DXF的核心逻辑与三大陷阱

2.1 坐标系本质:PCB的“制造视角” vs CAD的“绘图视角”

先说最根本的冲突点:PADS的PCB编辑器内部使用的是右手坐标系(Right-Handed Coordinate System),原点在左下角,X向右、Y向上,Z轴垂直板面向外(指向元件面)。而标准DXF文件(尤其是AutoCAD R12/R2000格式)默认采用左手坐标系(Left-Handed Coordinate System),原点也在左下角,X向右、Y向上,但Z轴指向图纸平面内(即“朝向你的眼睛”)。这个Z轴方向差异,直接导致所有带方向性的元素——特别是文字、箭头、填充图案——在导入CAD后发生镜像翻转。我拿一个实际例子说明:在PADS里画一个“TEST”文字,放在坐标(10,20),字体为Arial,水平居中。导出DXF后,在AutoCAD里打开,你会发现:

  • 文字内容仍是“TEST”,但左右顺序没变;
  • 可文字的基线(baseline)被整体沿Y轴镜像,导致它看起来像是“被压扁后翻转”;
  • 更关键的是,如果这个文字旁边有个指向右侧的箭头(→),在DXF里会变成指向左侧(←)。

这不是PADS导出错了,而是DXF规范里Text实体的extrusion vector(挤出向量)默认设为(0,0,-1),而PADS导出时按PCB制造要求设为(0,0,1)。两者Z分量符号相反,CAD读取时自动做了一次坐标系转换,结果就是视觉上的镜像。解决方案不是“强行让CAD改坐标系”,而是让PADS在导出时主动适配CAD的预期——也就是把整个Top Silkscreen层的数据,先做一次Y轴镜像(Flip Y),再按左手坐标系重新编码。这步操作在PADS VX.2.4及以后版本里,藏在“Export to DXF”对话框的“Advanced Options”里,叫“Mirror Y-Axis for Mechanical Drawing”,但很多人根本找不到,因为默认不勾选,且提示文案极其隐蔽:“Enable for mechanical assembly drawings (e.g., AutoCAD)”——翻译过来就是“给机械装配图用(比如AutoCAD)”,而不是“给PCB厂用”。

2.2 图层映射:Silkscreen ≠ Layer_1,别让工厂看不懂你的DXF

PADS导出DXF时,默认会把所有可见图层都映射到DXF的Layer表里,但命名规则极不友好。比如Top Silkscreen在PADS里叫“Top Overlay”,导出后DXF图层名可能是“TOP_OVERLAY”、“LAYER_1”甚至“SILK_TOP”,完全取决于你当前Design Rule里Layer Name的设置。而结构工程师拿到DXF后,第一件事就是关掉所有无关图层,只留丝印。如果图层名是“LAYER_1”,他得挨个点开确认是不是丝印;如果是“SILK_TOP”,他可能直接当成“Silk Screen Top”理解,但万一你板子有多个丝印层(比如Top Overlay + Top Assembly),他就懵了。更糟的是,有些老版本PADS(VX.2.2之前)导出时,会把丝印文字和轮廓线分到不同图层——文字在“TEXT”层,边框在“OUTLINE”层,结果CAD里文字和框完全错位。正确做法是导出前手动重命名图层,并强制合并:在PADS Layout里,进Setup > Layer Definition,把Top Overlay层的Name改成“TSILK”(Top Silk),Bottom Overlay改成“BSILK”,然后在Export DXF对话框里,勾选“Merge Layers”并指定“TSILK”和“BSILK”合并到同一个DXF Layer,名字就叫“SILK”。这样导出的DXF,结构工程师打开一眼就知道哪层是丝印,不用猜、不用试、不返工。我实测过,嘉立创、捷多邦这些主流PCB厂的工程部,看到“SILK”图层名,直接走流程;看到“LAYER_37”,第一反应是打电话问你“这是铜皮还是阻焊?”。

2.3 字体失真:为什么你的“Arial”在CAD里变成了“一堆短线”

PADS导出DXF时,对文字的处理有两种模式:TrueType Font Embedding(嵌入字体)和Vector Outline Conversion(矢量化轮廓)。前者把字体文件(.ttf)直接打包进DXF,后者把每个字符拆解成贝塞尔曲线组成的封闭路径。问题来了:AutoCAD默认不支持嵌入TrueType字体(尤其R12格式),打开后文字显示为“?”或空白;而矢量化虽然能显示,但PADS的矢量化引擎对中文字体支持极差——比如你用“微软雅黑”写“测试”,导出后变成几十个零碎短线段,CAD里根本无法编辑、无法缩放、无法批量修改。唯一可靠方案是矢量化+预设字体映射:在PADS里,进Setup > User Preferences > Drafting,把Text Font设为“Stroke Fonts”(笔画字体),比如“ROMANS.SHX”或“TXT.SHX”。这两种是AutoCAD原生支持的SHX字体,导出DXF后,文字自动转为矢量路径,且保持可编辑性——双击就能改内容、调大小、换对齐方式。我试过12种中文字体,只有“仿宋_GB2312”在SHX映射下能勉强可用,但仍有笔画粘连,所以结论很明确:给结构/模具用的丝印DXF,文字必须用英文字体,且限定为ROMANS、ROMAND、ISOCP等AutoCAD标准SHX字体。别觉得“中文重要”,实际产线里90%的定位标识、型号代码、厂商LOGO都是英文缩写,真要打中文,交给激光打标机单独处理,DXF里只留坐标点。

3. 实操全流程:从PADS Layout到可交付DXF的七步法

3.1 准备阶段:清理、冻结、验证,三步定成败

导出前不做清理,等于埋雷。我见过最典型的错误:有人导出DXF后发给结构工程师,对方说“丝印位置偏了5mm”,结果查了一下午,发现是PADS里有个隐藏的“Mechanical 1”层,上面画了个偏移的参考框,导出时被默认包含进DXF,覆盖了真实丝印坐标。所以第一步必须做“三层清理”:

  1. 图层清理:按Ctrl+L打开Layer Select对话框,把所有非丝印相关层(如Top Copper、Bottom Soldermask、Drill Drawing)全部设为“Off”;只保留Top Overlay和Bottom Overlay(如果需要双面导出);特别注意关掉“Mechanical”类图层,它们常被误用来画结构参考线。

  2. 对象冻结:按Ctrl+Shift+F打开Find Tool,类型选“Text”,点击“Find All”,然后在结果列表里全选,右键“Properties”,把所有Text对象的“Visible”设为“Yes”,“Locked”设为“No”——确保没有被锁住的文字漏导出;同理,对“Line”、“Arc”、“Circle”类型也执行一遍,避免丝印轮廓线被冻结。

  3. 坐标原点验证:在PADS Layout里,按Ctrl+Shift+O打开Origin对话框,确认Current Origin是(0,0),且Units是“Mils”或“MM”(必须和结构图单位一致)。如果原点被挪到板子中心,导出DXF后所有坐标都会偏移,CAD里得手动平移,极易出错。我的习惯是:每次新建PCB时,就用“Edit > Origin > Set”把原点钉死在板子左下角焊盘基准点上,一劳永逸。

提示:清理完后,按Ctrl+R刷新视图,用“View > Fit All”看一眼——屏幕上只该有清晰的丝印文字和轮廓线,其他一切杂色都该消失。这是导出前的黄金检验点。

3.2 导出设置详解:每个勾选项背后的硬核逻辑

进入File > Export > DXF,弹出对话框,这里90%的人只点“OK”,却不知下面藏着五个决定成败的开关:

  • Format:必须选“AutoCAD R2000 (*.dxf)”。R12格式太老,不支持真彩色、不支持长图层名;R2007以上又太新,有些老版AutoCAD打不开。R2000是兼容性黄金平衡点,80%的机械厂、模具厂、结构团队都在用。

  • Scale Factor:填“1.0”。别信网上说的“填25.4转毫米”,那是针对英寸单位的板子。PADS默认单位是Mils(千分之一英寸),1 Mil = 0.0254 mm,但DXF导出时已自动做单位转换,填1.0就是1:1无缩放。我试过填25.4,结果CAD里丝印放大25.4倍,螺丝孔都比板子还大。

  • Mirror Y-Axis for Mechanical Drawing:这是核心!必须勾选。前面说过,这是告诉PADS:“我要的不是PCB厂用的制造图,而是结构用的装配图,请把Y轴镜像后再导出”。不勾选,文字和箭头全反;勾选后,CAD里打开就是正的。

  • Merge Layers:勾选,并在下方“Layer Mapping”里,把“Top Overlay”映射到“SILK”,把“Bottom Overlay”映射到“BSILK”。这样导出的DXF只有两个图层,干净利落。

  • Text Handling:选“Convert to Polyline”。这是矢量化开关,确保文字变成可编辑的曲线,而不是依赖字体的文本对象。同时,在下方“Font Mapping”里,把“Default Font”设为“ROMANS.SHX”,这是AutoCAD最稳的无衬线字体,导出后文字锐利、缩放不失真。

注意:如果板子有特殊符号(比如LOGO图标),它通常是“Shape”类型,不是Text。这类对象在“Text Handling”里不生效,需单独处理——在导出前,选中所有Shape,右键“Properties”,把“Fill Mode”设为“Solid”,否则DXF里图标会是空心的。

3.3 双面丝印导出:Top和Bottom不能一起导,必须分两次

很多人想“一步到位”,勾选Top Overlay和Bottom Overlay一起导出,结果DXF里两层丝印堆在一起,结构工程师根本分不清哪面是顶、哪面是底。正确做法是分两次导出,且第二次必须做额外镜像:

  1. 第一次导出Top Overlay:按前述设置,勾选“Top Overlay”,导出文件命名为“XXX_TSILK.dxf”。

  2. 第二次导出Bottom Overlay:取消Top Overlay,只勾选Bottom Overlay;关键步骤:在“Mirror Y-Axis for Mechanical Drawing”下方,找到“Flip Bottom Layer”选项(VX.2.4新增),勾选它。这个开关的作用是:Bottom Overlay在PCB上是“从焊接面往上看”,导出时需先做一次X轴镜像(左右翻转),再做Y轴镜像(适配CAD),才能得到结构图上正确的视觉方向。如果不勾,Bottom丝印在CAD里会是上下颠倒+左右反的双重错误。

  3. 导出文件命名为“XXX_BSILK.dxf”。

这样导出的两个DXF,结构工程师在AutoCAD里用“Insert”命令分别插入,设置相同坐标原点,就能精准叠合,检查双面器件的装配干涉。我服务过的工业控制板项目,就是靠这套方法,把200多个BGA器件的底部丝印定位误差控制在±0.05mm内。

3.4 DXF后处理:三分钟让文件从“能打开”变成“能直接用”

导出的DXF不是终点,而是起点。我总结了三个必做后处理动作,缺一不可:

  1. 图层颜色统一:在AutoCAD里打开DXF,输入LAYER命令,把“SILK”图层颜色设为青色(Color 4),把“BSILK”设为洋红色(Color 6)。这样在复杂装配图里,丝印层一眼就能从灰色的结构线中跳出来,避免误操作。

  2. 文字批量居中:选中所有Text对象(CTRL+A),输入JUSTIFYTEXT命令,选“MC”(Middle Center),回车。这一步把所有丝印文字的对齐方式强制设为“中点居中”,消除PADS导出时因字体基线差异造成的垂直偏移。实测下来,原本偏移0.2mm的文字,处理后误差<0.01mm。

  3. 坐标原点锁定:在AutoCAD里,用UCS命令新建一个UCS,原点设在板子左下角焊盘中心(用ENDPOINT捕捉),然后输入BASE命令,把UCS原点设为当前坐标系原点。这样后续所有测量、标注、插入操作,都以这个点为基准,杜绝“每次打开坐标飘移”的噩梦。

实操心得:这三步我写成了AutoCAD脚本(.scr文件),每次收到新DXF,双击运行,三秒搞定。脚本内容就三行:-LAYER C 4 SILKJUSTIFYTEXT ALL MCUCS ORIGIN 0,0,0。分享给结构团队后,他们反馈“终于不用手动调半天了”。

4. 高阶技巧与避坑指南:那些没人告诉你的细节

4.1 中文丝印终极方案:不导出,改用“坐标点+字体库”分离交付

如果你的板子必须有中文丝印(比如品牌名、安全警示语),别硬刚DXF导出。我的方案是:在PADS里,把中文文字全部删掉,只留下一个“占位点”——用“Place > Point”工具,在每个中文位置放一个十字标记,属性里写明文字内容(比如“文字:深圳市XX科技”)。导出DXF时,只导出这些Point对象,图层名设为“SILK_POINT”。然后另建一个Excel表格,列名是“X坐标(mm)、Y坐标(mm)、文字内容、字体大小(mm)、旋转角度(°)”,把所有中文信息填进去。结构工程师拿到DXF和Excel,用AutoCAD的“QuickCalc”算出坐标,再用“TEXT”命令手动输入,字体用“仿宋_GB2312”,大小按Excel里写的设。为什么这么做?因为:

  • DXF里中文矢量化后,笔画全是碎线,CAD里放大10倍就锯齿;
  • 真实产线中,中文丝印往往由激光打标机单独完成,它认的是坐标点,不是DXF图形;
  • Excel表格可版本管理、可多人协作、可加备注,比改DXF安全十倍。

4.2 Gerber转DXF的误区:千万别用第三方转换工具

网上很多教程教“用Gerber Viewer把Top Silkscreen转成DXF”,这是典型外行方案。Gerber是光绘语言,描述的是“曝光区域”,而丝印DXF要的是“几何轮廓”。Gerber转DXF工具(比如GC-Prevue、ViewMate)做的其实是“光栅化+边缘检测”,结果就是:

  • 文字边缘毛糙,放大后全是锯齿;
  • 小于0.2mm的线宽丢失;
  • 圆弧变成多段折线,CAD里无法做圆角倒角。

正确路径永远是:从PADS原生导出。Gerber只用于给PCB厂生产,DXF只用于给结构/模具/装配用,二者源头不同,不该混用。我曾用同一份PADS文件,对比过原生DXF和Gerber转DXF的精度:在0.1mm精度要求下,原生DXF所有尺寸误差<0.005mm,Gerber转DXF最大误差达0.12mm,超差24倍。

4.3 自动化脚本:用PADS Script一键导出双面DXF

如果你每周都要导出十几个板子的丝印DXF,手动操作太慢。PADS支持VBScript,我写了段脚本,存为“ExportSilkToDXF.vbs”,双击运行,自动完成:

  • 检测当前Design是否含Top/Bottom Overlay;
  • 分别导出TSILK.dxf和BSILK.dxf;
  • 自动添加镜像设置;
  • 文件名按“ProjectName_Rev_Date.dxf”格式生成。

脚本核心逻辑就三句:

Set app = GetObject(,"PADSLayout.Application") app.Command "EXPORTDXF TOP_OVERLAY TSILK.DXF SCALE=1.0 MIRROR=Y MERGELAYERS=YES TEXT=POLYLINE FONT=ROMANS.SHX" app.Command "EXPORTDXF BOTTOM_OVERLAY BSILK.DXF SCALE=1.0 MIRROR=Y FLIPBOTTOM=YES MERGELAYERS=YES TEXT=POLYLINE FONT=ROMANS.SHX"

把这段代码存成.vbs文件,放在PADS安装目录下,右键“以管理员身份运行”,全程无人值守。我们团队用它把单次导出时间从8分钟压缩到12秒,每月省下17小时重复劳动。

4.4 常见问题速查表:导出失败、文字消失、坐标偏移的根因与解法

问题现象根本原因解决方案实操耗时
DXF打开后文字全变成“?”PADS导出用了TrueType字体,CAD不支持嵌入进Setup > User Preferences > Drafting,Text Font改选“ROMANS.SHX”30秒
丝印位置整体偏移5.2mmPADS原点没设在板子左下角,或单位是Mils但CAD按mm解析Ctrl+Shift+O设原点为(0,0);导出Scale填1.0,勿填25.41分钟
Bottom丝印上下颠倒导出Bottom Overlay时未勾选“Flip Bottom Layer”重新导出,务必勾选该选项2分钟
DXF里文字和轮廓线错位丝印文字和边框分属不同图层,导出未合并Setup > Layer Definition,把Top Overlay和Outline层名统一;导出时勾选“Merge Layers”1分钟
CAD里丝印显示为白色背景遮挡结构线DXF图层颜色默认为ByLayer,未设透明度在CAD里LAYER命令,选SILK层,Color设为青色,Lineweight设为0.15mm45秒

踩坑心得:我最早犯的错是“以为导出设置一次搞定,永久有效”。结果发现PADS的Export DXF对话框设置不保存,每次打开都是默认值。所以现在我的桌面放着一张便签纸,上面手写三行:“Mirror Y-Axis ✔️”、“Merge Layers ✔️”、“Text=Polyline ✔️”,导出前必对照检查。这招看似土,但比记100条快捷键管用。

5. 扩展应用:丝印DXF不只是给结构看,还能这么用

5.1 SMT Mark点识别:用DXF生成高精度定位模板

SMT贴片机需要Mark点(光学定位点)的精确坐标,传统做法是人工在Gerber里量取,误差大、效率低。我的方案是:在PADS里,把所有Mark点用“Place > Shape”画成实心圆(直径1.5mm),图层设为“MARK_TOP”;导出DXF时,单独导出这个图层,文件名“XXX_MARK.dxf”。然后用Python脚本(pandas+shapely库)读取DXF,自动提取所有圆心坐标,生成CSV文件,格式为:

Name,X(mm),Y(mm),Diameter(mm) MARK1,12.345,67.890,1.5 MARK2,23.456,78.901,1.5

这个CSV直接导入贴片机编程软件,坐标精度达0.001mm,比人工测量快10倍。某汽车电子客户用这方法,把Mark点录入时间从2小时缩短到8分钟,且零错误。

5.2 激光打标机直驱:DXF转G-code,跳过中间软件

很多激光打标机(如Epilog、Trotec)支持直接读取DXF,但要求文字必须是闭合路径。PADS导出的矢量化文字满足此条件。实操路径:导出DXF → 在Inkscape里打开 → 全选文字 → Path > Object to Path(转为路径)→ File > Save As → 格式选“Plain SVG” → 用开源工具“svg2gcode”转成G-code → 直接烧录到打标机。全程无需CorelDRAW或AutoCAD,成本为零。我们给一款医疗传感器板做序列号打标,用此法实现“一板一码”,打标速度提升40%,因为省去了人工在打标软件里逐个输入坐标的环节。

5.3 3D装配干涉检查:DXF+STEP混合建模

结构工程师常用SolidWorks做装配干涉分析,但丝印是2D的。我的做法是:把PADS导出的TSILK.dxf,用SolidWorks的“DWG/DXF Import”功能导入,生成2D草图;然后用“Extrude”命令,给丝印文字拉伸0.05mm高度,变成微凸的3D特征;最后和外壳STEP模型装配,运行“Interference Detection”,能精准查出丝印与外壳内壁的0.01mm级干涉。这比纯目测检查可靠得多,某无人机飞控板项目,靠这方法提前发现3处潜在刮擦风险,避免了量产后的返工。

我在实际项目中发现,真正卡住进度的从来不是技术多难,而是“不知道哪个开关该开、哪个参数该设”。PADS导出DXF这件事,本质上是个坐标系翻译工作——把PCB的语言,翻译成机械的语言。你不需要成为PADS专家,但得懂这门翻译的语法规则。现在你手里已经有完整的操作链:从清理图层、设置镜像、选择字体,到后处理、自动化、扩展应用。下次再遇到结构工程师催DXF,你可以笑着回一句:“五分钟后,带坐标原点锁定的SILK文件发你邮箱。”

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询