☰
Altium Designer Gerber导出后缀名详解:从GTL到DRL的完整指南
2026/10/6 14:48:59 网站建设 项目流程

1. 从一块被工厂退回的板子说起

如果你画过PCB,大概率经历过这个场景:板子设计完,DRC全绿,3D预览看着也挺顺眼,于是你打开Altium Designer,点开File → Fabrication Outputs → Gerber Files,一路Next,导出,打包,发给板厂。然后第二天收到一封邮件:“您的压缩包里缺少阻焊层文件,请重新提供。”或者更让人崩溃的:“您的钻孔文件格式不对,我们无法解析。”

你打开自己导出的文件夹一看,里面躺着几十个文件,后缀名五花八门——.GTL、.GBL、.GTO、.GTS、.GTP、.GKO、.GD1、.GG1、.GBS、.GTS……你盯着这些缩写,心里只有一个念头:这都什么跟什么?

这不是你一个人的问题。Gerber文件的后缀名体系是历史遗留产物,它源自上世纪六七十年代的光绘机(Photoplotter)时代,每个后缀对应的是光绘机不同“光圈”或“层”的编号。Altium Designer在导出Gerber时,默认会按照RS-274X标准生成一套文件,但它的命名规则并不是“所见即所得”的,很多工程师第一次导出时都是一头雾水。

这篇文章要做的,就是把这套命名体系彻底拆开讲清楚。我会从Gerber文件的基本原理讲起,逐个解释AD导出的每一个后缀名对应的是PCB的哪一层、为什么这样命名、导出时哪些设置容易踩坑、以及如何用一份自查清单确保你发给板厂的文件一次通过。无论你用的是AD 09、AD 17、AD 19还是最新的AD 24,这套命名逻辑都是一脉相承的。

提示:本文讨论的是RS-274X格式的Gerber文件,这是目前绝大多数板厂接受的格式。如果你用的是Gerber X2或X3,后缀名规则会有所不同,但AD默认导出的仍是RS-274X。

2. Gerber后缀名的命名逻辑:为什么是.GTL而不是.TOP

2.1 光绘机时代留下的“遗产”

要理解Gerber后缀名,得先知道Gerber文件到底是什么。简单说,Gerber文件是一种矢量图形格式,它告诉光绘机“在哪里画线、在哪里曝光、在哪里钻孔”。一块PCB有多个层——顶层铜、底层铜、顶层阻焊、底层阻焊、顶层丝印、底层丝印、钻孔层等等——每一层都需要一个独立的Gerber文件。

在早期的光绘机系统中,每一层被分配一个编号,光绘机操作员根据编号来加载对应的胶片或曝光参数。后来这套编号逐渐演变成了文件扩展名的约定。比如:

  • GTL= Gerber Top Layer(顶层铜)
  • GBL= Gerber Bottom Layer(底层铜)
  • GTO= Gerber Top Overlay(顶层丝印)
  • GTS= Gerber Top Solder(顶层阻焊)
  • GTP= Gerber Top Paste(顶层锡膏)
  • GKO= Gerber Keep Out(禁止布线层)

你会发现,这些后缀名其实是“G + 层缩写”的组合。G代表Gerber,后面的字母代表具体的层。这个命名规则不是Altium发明的,而是整个PCB行业通用的约定,PADS、Allegro、KiCad等软件导出Gerber时也遵循类似的规则。

2.2 AD导出Gerber时的默认命名规则

Altium Designer在导出Gerber时,默认使用“扩展名”模式来命名文件。你可以在Gerber Setup对话框的“Layers”选项卡中看到每个层对应的文件名。AD会根据层的类型自动分配后缀名,但有时候也会出现一些“意外”的命名,比如.GD1、.GG1这种带数字的后缀。

这些带数字的后缀通常出现在钻孔层或机械层的导出中。比如:

  • .GD1= Gerber Drill 1(第一组钻孔文件)
  • .GG1= Gerber Guide 1(第一组引导孔文件)
  • .GBS= Gerber Bottom Solder(底层阻焊,但有时也用于底层锡膏)

这里要特别注意:不同版本的AD在命名上可能有细微差异。比如AD 09和AD 24在导出钻孔文件时,默认的后缀名可能不同。但核心逻辑是一致的:后缀名对应的是层的功能,而不是层的物理位置。

2.3 为什么板厂能看懂这些后缀名

你可能会问:板厂是怎么知道.GTL就是顶层铜的?答案很简单:行业约定。绝大多数板厂在收到Gerber压缩包后,会先用CAM软件(如Genesis 2000、CAM350)自动识别文件类型。这些软件内置了后缀名映射表,能够根据后缀名自动将文件分配到对应的层。

但这里有一个坑:如果你的后缀名不符合约定,板厂可能需要手动分配层。比如你把顶层铜命名为“TopCopper.gbr”,板厂也能处理,但需要人工干预,增加了出错概率和沟通成本。所以,保持默认的后缀名是最稳妥的做法。

注意:有些板厂会要求你把所有Gerber文件合并成一个“.gbr”文件,或者要求使用特定的命名规则。在导出前,最好先看一下板厂官网的“工艺能力”或“下单须知”页面,确认他们接受的格式。

3. 逐个拆解:AD导出的每一个后缀名到底对应哪一层

3.1 铜层相关后缀:GTL、GBL、G1、G2……

铜层是PCB的核心,负责导电。AD在导出铜层时,会根据你设置的层数生成对应的文件。对于双层板,通常只有GTL和GBL;对于多层板,还会有内层铜的Gerber文件。

后缀名对应层说明
.GTLTop Layer顶层铜,信号层
.GBLBottom Layer底层铜,信号层
.G1Internal Plane 1内层1,通常是电源层或地层
.G2Internal Plane 2内层2
.G3Internal Plane 3内层3
.GP1Internal Plane 1有些版本用GP表示内层

这里有一个容易混淆的点:内层铜的后缀名在不同AD版本中可能不同。在AD 09中,内层可能被命名为.G1、.G2;在AD 19及以后,可能被命名为.GP1、.GP2。但无论哪种命名,板厂都能识别,因为他们在CAM软件中会看到层的顺序和类型。

实操建议:如果你不确定内层的后缀名,可以在Gerber Setup对话框中点击“Layers”选项卡,查看每个层对应的“File Name”列。AD会显示完整的文件名,你可以据此确认。

3.2 阻焊层相关后缀:GTS、GBS、GTP、GBP

阻焊层(Solder Mask)是PCB上覆盖在铜箔上的绿色(或其他颜色)绝缘层,它决定了哪些地方需要露出铜箔(比如焊盘)。AD导出阻焊层时,会生成顶层阻焊和底层阻焊两个文件。

后缀名对应层说明
.GTSTop Solder Mask顶层阻焊,负片输出
.GBSBottom Solder Mask底层阻焊,负片输出
.GTPTop Paste Mask顶层锡膏,用于SMT钢网
.GBPBottom Paste Mask底层锡膏

这里要重点解释负片输出的概念。阻焊层的Gerber文件是“负片”——也就是说,文件中有图形的地方是没有阻焊的(即需要露铜的地方),没有图形的地方是有阻焊的。这和铜层的“正片”逻辑正好相反。很多新手第一次导出阻焊层时,看到文件里只有焊盘图形,以为导错了,其实这是正常的。

锡膏层(Paste Mask)和阻焊层类似,但它是用于制作SMT钢网的。锡膏层的图形通常比焊盘略小,这是为了控制锡膏量。如果你不做SMT,可以忽略这两个文件。

提示:有些板厂会要求你把阻焊层和锡膏层分开打包,或者要求提供“阻焊开窗”的单独文件。在导出前,最好确认一下板厂的具体要求。

3.3 丝印层相关后缀:GTO、GBO

丝印层(Silkscreen)是PCB上印白色文字和图形的那一层,用于标注元件位号、极性、版本号等信息。AD导出丝印层时,会生成顶层丝印和底层丝印两个文件。

后缀名对应层说明
.GTOTop Overlay顶层丝印
.GBOBottom Overlay底层丝印

丝印层的导出有一个常见坑:如果丝印压到了焊盘,板厂可能会在制造时去掉压焊盘的部分。这是因为丝印是油墨印刷的,如果印在焊盘上,会影响焊接。所以,在导出丝印层之前,最好用AD的“Design Rule Check”检查一下丝印与焊盘的重叠情况。

实操建议:在AD中,你可以通过“Design → Rules → Manufacturing → Silkscreen Over Component Pads”规则来检查丝印是否压焊盘。如果违反规则,AD会报错,你可以据此调整丝印位置。

3.4 机械层与禁止布线层:GKO、GM1、GM2……

机械层(Mechanical Layer)用于定义PCB的物理轮廓、尺寸标注、装配说明等。AD允许你使用多个机械层,每个机械层都可以导出为独立的Gerber文件。

后缀名对应层说明
.GKOKeep Out Layer禁止布线层,定义PCB边界
.GM1Mechanical Layer 1机械层1,通常是板框
.GM2Mechanical Layer 2机械层2,可能是尺寸标注
.GM3Mechanical Layer 3机械层3,可能是装配图

禁止布线层(Keep Out Layer)是一个特殊的层,它定义了PCB的物理边界和禁止布线的区域。在导出Gerber时,AD通常会把Keep Out Layer导出为.GKO文件。板厂会根据这个文件来切割PCB外形。

机械层的导出需要特别注意:不是所有机械层都需要导出。通常只需要导出板框所在的机械层(比如GM1)和可能用到的尺寸标注层。如果你导出了所有机械层,板厂可能会困惑于哪个才是真正的板框。

实操建议:在Gerber Setup对话框中,只勾选你需要的机械层。通常建议勾选“Mechanical 1”作为板框层,其他机械层根据实际需要选择。

3.5 钻孔文件:GD1、GG1、DRL、TXT

钻孔文件是Gerber文件中比较特殊的一类,因为它不是用光绘机绘制的,而是用数控钻床钻孔的。AD在导出钻孔文件时,会生成两种格式:Gerber格式和NC Drill格式。

后缀名对应层说明
.GD1Gerber Drill 1第一组钻孔,Gerber格式
.GG1Gerber Guide 1第一组引导孔,Gerber格式
.DRLNC DrillNC钻孔文件,最常用
.TXTNC Drill Text钻孔文本文件,包含孔径信息

NC Drill格式是目前最常用的钻孔文件格式,它包含钻孔的位置、孔径和工具编号。AD在导出NC Drill时,会生成一个.DRL文件和一个.TXT文件。.TXT文件是钻孔报告,列出了每个孔径对应的工具编号和数量。

Gerber格式的钻孔文件(.GD1、.GG1)现在用得比较少,因为它的精度和兼容性不如NC Drill。但有些老式板厂可能仍然接受这种格式。

实操建议:在导出钻孔文件时,建议同时导出NC Drill格式和Gerber格式,让板厂自己选择。在AD中,你可以通过“File → Fabrication Outputs → NC Drill Files”来导出NC Drill,通过“Gerber Files”对话框中的“Drill Drawing”层来导出Gerber格式的钻孔文件。

注意:钻孔文件的单位设置非常重要。AD默认使用“Inches”或“Millimeters”,你需要和板厂确认他们接受的单位。如果单位设置错误,钻孔位置会完全偏移。

4. 导出Gerber时的关键设置:那些让你少走弯路的选项

4.1 单位与格式:为什么你的钻孔总是偏

在Gerber Setup对话框中,有一个“Format”选项,它决定了Gerber文件的坐标格式。AD默认使用“2:4”格式(即整数部分2位,小数部分4位),单位是Inches。但很多板厂更习惯“4:4”格式或“3:5”格式。

为什么格式这么重要?因为Gerber文件中的坐标是整数,光绘机需要根据格式来解析小数点的位置。如果格式设置错误,图形会放大或缩小,甚至完全错位。

实操建议:在导出Gerber之前,先和板厂确认他们接受的格式。如果没有特殊要求,建议使用以下设置:

  • 单位:Millimeters
  • 格式:4:4(整数4位,小数4位)
  • 零抑制:Leading zeros suppressed

这样设置的好处是精度足够高(0.0001mm),而且兼容性好。

4.2 层选择:哪些层必须导出,哪些可以忽略

在Gerber Setup对话框的“Layers”选项卡中,你会看到AD列出了所有可导出的层。对于一块典型的双层板,你需要导出的层包括:

  • Top Layer(.GTL)
  • Bottom Layer(.GBL)
  • Top Overlay(.GTO)
  • Bottom Overlay(.GBO)
  • Top Solder(.GTS)
  • Bottom Solder(.GBS)
  • Keep Out Layer(.GKO)
  • Mechanical 1(.GM1,板框)
  • Drill Drawing(钻孔图)

可以忽略的层:

  • Top Paste(.GTP)和Bottom Paste(.GBP):如果你不做SMT,可以忽略
  • 其他机械层:除非板厂要求,否则不需要导出
  • Internal Plane:如果是双层板,没有内层

实操建议:在导出前,先右键点击“Layers”列表,选择“All Off”关闭所有层,然后逐个勾选你需要的层。这样可以避免导出不必要的文件,减少板厂的处理时间。

4.3 钻孔文件的导出细节:别让孔径对不上

钻孔文件的导出有两个关键设置:单位和格式。在NC Drill Setup对话框中,你需要设置:

  • 单位:Millimeters或Inches
  • 格式:2:4或4:4
  • 零抑制:Leading zeros suppressed
  • 钻孔原点:Absolute或Relative

钻孔原点是一个容易被忽略的设置。如果你选择“Relative”,钻孔位置会相对于你设置的某个参考点;如果你选择“Absolute”,钻孔位置会相对于PCB的原点。大多数板厂要求使用“Absolute”原点。

实操建议:在导出钻孔文件之前,先在PCB编辑器中设置好原点(Edit → Origin → Set),通常设置在板框的左下角。然后导出时选择“Absolute”原点,这样钻孔位置就和Gerber文件中的坐标一致了。

4.4 文件命名与打包:让板厂一眼看懂

导出Gerber后,你会得到一堆文件。如何命名和打包这些文件,直接影响板厂的处理效率。

命名建议:

  • 使用默认的后缀名,不要随意更改
  • 如果板厂要求特定的命名规则,按照他们的要求来
  • 在文件名中包含版本号和日期,比如“MyBoard_V1.2_20250101.GTL”

打包建议:

  • 将所有Gerber文件放在一个文件夹中
  • 将文件夹压缩为ZIP格式(不要用RAR,有些板厂不支持)
  • 在压缩包中包含一个README.txt文件,说明板子的层数、尺寸、板厚、铜厚、阻焊颜色等信息

实操建议:在AD中,你可以使用“File → Fabrication Outputs → Gerber Files”导出Gerber,然后使用“File → Fabrication Outputs → NC Drill Files”导出钻孔文件。导出后,手动将文件整理到一个文件夹中,再压缩。

5. 自查清单:发给板厂前的最后一道防线

5.1 文件完整性检查

在发给板厂之前,用以下清单逐项检查:

检查项检查内容常见问题
铜层是否包含.GTL和.GBL忘记导出底层铜
阻焊层是否包含.GTS和.GBS忘记导出阻焊层
丝印层是否包含.GTO和.GBO丝印压焊盘
板框层是否包含.GKO或.GM1板框不闭合
钻孔文件是否包含.DRL和.TXT钻孔单位错误
文件数量是否与层数匹配多导或漏导

板框不闭合是一个常见问题。如果板框没有完全闭合,板厂无法切割PCB外形。在AD中,你可以使用“Design → Board Shape → Define from selected objects”来确保板框闭合。

5.2 用CAM软件预览:最直观的验证方式

如果你有条件,建议用CAM350或Genesis 2000等软件预览一下Gerber文件。这些软件可以模拟板厂的处理过程,帮你发现潜在问题。

免费替代方案:你可以使用“Gerber Viewer”在线工具(如PCBWay的在线Gerber查看器)来预览文件。上传你的Gerber压缩包,查看每一层的图形是否正确。

实操建议:在预览时,重点检查以下内容:

  • 铜层是否有断线或短路
  • 阻焊层是否覆盖了需要露铜的焊盘
  • 丝印层是否清晰可读
  • 钻孔位置是否与焊盘对齐

5.3 与板厂沟通的注意事项

即使你做了所有检查,有时候板厂还是会提出一些问题。以下是一些常见的沟通场景:

  • 板厂说“缺少阻焊层”:检查你是否导出了.GTS和.GBS文件
  • 板厂说“钻孔文件格式不对”:检查钻孔文件的单位和格式是否与板厂要求一致
  • 板厂说“板框不清晰”:检查.GKO或.GM1文件是否包含完整的板框
  • 板厂说“丝印压焊盘”:检查丝印层是否与焊盘重叠,必要时调整丝印位置

实操建议:在第一次与某家板厂合作时,建议先发一个小批量订单测试。如果板厂反馈了问题,记录下来,下次导出时避免同样的错误。

提示:有些板厂提供“Gerber文件检查”服务,他们会帮你检查文件是否完整、是否有潜在问题。在下单前,可以询问板厂是否提供这项服务。

6. 那些年我踩过的Gerber导出坑

6.1 钻孔文件单位错误导致整板报废

这是我早期做PCB时踩过的一个大坑。当时我导出了Gerber文件,也导出了钻孔文件,但钻孔文件的单位设置成了Inches,而Gerber文件的单位是Millimeters。结果板厂按照Inches来钻孔,所有孔的位置都偏了,整板报废。

教训:在导出钻孔文件时,一定要确认单位与Gerber文件一致。最好在导出前,先在AD中设置好默认单位(Preferences → PCB Editor → General → Unit),然后导出时选择相同的单位。

6.2 阻焊层负片逻辑搞反

另一个坑是阻焊层的负片逻辑。我第一次导出阻焊层时,看到文件里只有焊盘的图形,以为导错了,于是手动在阻焊层上画了整板的图形。结果板厂收到文件后,发现阻焊层覆盖了整个板子,焊盘完全被阻焊覆盖,无法焊接。

教训:阻焊层的Gerber文件是负片,文件中有图形的地方是没有阻焊的。不要手动修改阻焊层的图形,保持AD导出的原始状态即可。

6.3 机械层导出过多导致板厂困惑

有一次我导出了所有机械层,包括尺寸标注、装配说明等。板厂收到文件后,问我哪个才是真正的板框。我这才意识到,导出过多机械层会让板厂困惑。

教训:只导出必要的机械层,通常只需要板框所在的机械层。其他机械层可以在导出前关闭。

6.4 文件命名不规范导致板厂手动分配层

有一次我为了“清晰”,把Gerber文件重命名为“TopCopper.gbr”、“BottomCopper.gbr”等。结果板厂收到文件后,无法自动识别层类型,需要手动分配。这不仅增加了板厂的工作量,也增加了出错概率。

教训:保持默认的后缀名,不要随意更改。如果板厂有特殊要求,按照他们的要求来。

6.5 忘记导出钻孔图导致无法确认孔径

有一次我导出了Gerber文件和钻孔文件,但忘记导出钻孔图(Drill Drawing)。板厂收到文件后,无法确认每个孔径对应的工具编号,需要我重新提供。

教训:钻孔图(Drill Drawing)是一个重要的辅助文件,它列出了每个孔径的符号和工具编号。在导出Gerber时,记得勾选“Drill Drawing”层。

7. 进阶技巧:如何让Gerber导出更高效

7.1 使用Output Job文件一键导出

如果你经常需要导出Gerber文件,建议使用AD的“Output Job”功能。你可以创建一个Output Job文件,配置好所有导出设置,然后一键生成所有Gerber文件和钻孔文件。

操作步骤:

  1. 在Projects面板中,右键点击项目,选择“Add New to Project → Output Job File”
  2. 在Output Job编辑器中,添加“Gerber Files”和“NC Drill Files”输出
  3. 配置每个输出的层、单位、格式等设置
  4. 点击“Generate”按钮,一键生成所有文件

好处:Output Job文件可以保存和复用,避免每次导出时重复设置。对于经常做PCB的工程师来说,这是一个非常实用的功能。

7.2 使用脚本批量导出

如果你需要导出多个项目的Gerber文件,可以使用AD的脚本功能。AD支持DelphiScript、VBScript等脚本语言,你可以编写脚本来自动化导出过程。

示例脚本(DelphiScript):

// 这是一个简单的DelphiScript示例,用于导出当前PCB的Gerber文件 Procedure ExportGerber; Begin // 打开Gerber Setup对话框 ResetParameters; AddStringParameter('Action', 'Export'); AddStringParameter('FileType', 'Gerber'); RunProcess('PCB:GerberSetup'); // 导出NC Drill文件 ResetParameters; AddStringParameter('Action', 'Export'); AddStringParameter('FileType', 'NC Drill'); RunProcess('PCB:NC Drill'); End;

注意:脚本的具体语法可能因AD版本而异,建议参考AD的官方文档或社区论坛。

7.3 使用模板减少重复设置

如果你经常做类似的项目,可以创建一个Gerber导出模板。在Gerber Setup对话框中,配置好所有设置后,点击“Save As”保存为模板文件(.ini格式)。下次导出时,点击“Load”加载模板即可。

好处:模板可以确保每次导出的设置一致,避免因设置不同导致的错误。

8. 关于Gerber后缀名,我的个人经验总结

说了这么多,其实核心就一句话:Gerber后缀名是行业约定,不是AD随意发明的。理解每个后缀名对应的层,是每个PCB工程师的基本功。

我在实际工作中发现,很多新手工程师之所以在Gerber导出上反复踩坑,根本原因不是技术难度高,而是缺乏对Gerber文件本质的理解。他们把Gerber文件当成“黑盒”,只知道点“导出”,不知道导出的文件到底代表什么。一旦理解了每个后缀名的含义,很多问题就迎刃而解了。

最后再分享一个小技巧:如果你不确定某个后缀名对应哪一层,可以在AD的Gerber Setup对话框中,将鼠标悬停在层名称上,AD会显示一个提示框,告诉你该层的完整名称和对应的文件名。这个功能在AD 19及以后的版本中都有,非常实用。

另外,如果你经常和不同的板厂合作,建议建立一个“板厂要求”文档,记录每家板厂对Gerber文件的具体要求(如单位、格式、命名规则等)。这样下次合作时,直接查阅文档即可,不用每次都去问。

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

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

立即咨询