跳转到内容

批量模式

批量模式会使用相同的格式和选项设置,在单次操作中转换多个文件。

在 GUI 中使用批量模式

  1. 在转换向导的格式选择页面,选择输入和输出格式,并勾选 批量模式。
  2. 在 选择批量文件 页面,使用 添加文件… 或 添加文件夹… 添加文件。对于会将多个文件读入同一图纸的格式(例如 Gerber),将文件合并为单个输出 会将每个文件夹中的文件一起转换。
  3. 配置导入格式选项。
  4. 配置导出格式选项。
  5. 在 批量工具 页面选择要应用的工具。
  6. 批量转换 页面会转换这些文件,并列出每个文件的结果。

每个输出文件都会写入到其输入文件旁边,使用输入文件的名称和输出格式的扩展名;如果已存在同名文件,则会添加 (2)、(3)、…。

从命令文件进行无人值守批量转换

如果命令文件设置了 LcConvertBatch=true 并跳过文件选择,则会从 LcImportFile 获取文件:文件夹代表其中的所有文件,文件名可以包含通配符 * 和 ?。跳过所有步骤时,批量转换不会打开窗口,完成后 LinkCAD 会退出:

[LinkCAD]
LcLoadDefaults=true
LcConvertBatch=true
LcImportFormat=GDSII
LcExportFormat=DXF
LcImportFile=C:\designs\*.gds
LcSkipSteps=all
Terminal window
linkcad.exe --config batch.lsn --console

如果没有匹配的文件,或有文件转换失败,退出代码为 1。LinkCAD 10 的批量命令文件在 LcSkipSteps 中列出批量步骤而不是使用 all,这类文件无需修改即可使用。

从命令行使用批量模式

使用命令文件配置所有选项,然后针对每个输入文件调用一次 LinkCAD:

单次转换

Terminal window
linkcad.exe --import chip.gds --export chip.dxf --output-format DXF --quit

循环处理文件 (PowerShell)

Terminal window
Get-ChildItem *.gds | ForEach-Object {
$out = $_.BaseName + ".dxf"
linkcad.exe --import $_.FullName --export $out --output-format DXF --quit --console
}

循环处理文件 (cmd)

Terminal window
for %%f in (*.gds) do (
linkcad.exe --import "%%f" --export "%%~nf.dxf" --output-format DXF --quit --console
)

使用命令文件共享设置

Terminal window
Get-ChildItem *.gds | ForEach-Object {
$out = $_.BaseName + ".dxf"
linkcad.exe --config my_settings.lsn `
--import $_.FullName --export $out --output-format DXF --quit --console
}

命令文件会设置格式选项(DXF 缩放比例、GDS 单位等),而 --import 和 --export 会覆盖每次迭代的文件路径。文件格式请参见命令文件。

批量工具

在 GUI 中启用批量模式后,LinkCAD 可以自动对每个文件应用一组工具。这些工具在向导的 批量工具 页面配置:

GUI 组命令文件键描述
Merge OverlappingLcBatchToolsMerge合并每个图层上的重叠形状
De-embedLcBatchToolsDeembed移除嵌入的多边形
Convert to OutlineLcBatchToolsOutline将选定形状类型转换为多边形轮廓
Detect Quasi CirclesLcBatchToolsQuasiCircles将近似圆转换为真正的圆

Convert to Outline 组使用与 Tools → Shape Operations → Explode to Polygons 相同的形状选择选项。关键子选项包括:

子选项键描述
Polylines with widthToolConvertWires将有宽度的折线/路径转换为多边形轮廓
Zero-width closed polylinesToolConvertZeroWidthClosedPolylines将闭合零宽折线转换为多边形,独立于有宽度折线
CirclesToolConvertCircles将圆转换为多边形
DonutsToolConvertDonuts使用所选圆环样式转换圆环
Donut styleToolConvertDonutsStyle0 = Single Outline,1 = Half Donuts
TextToolConvertText将文本转换为多边形
Arc PrecisionToolArcPrecValue, ToolArcPrecUnits曲线近似精度

可在命令文件中使用这些键名设置它们。从命令行使用 --apply-tool 并以分号分隔工具名称:

Terminal window
linkcad.exe -i input.gds -o output.gds --output-format GDSII `
--apply-tool "Merge;Deembed" --quit

提示

  • 在脚本中使用 --console 查看每个文件的进度和错误
  • 使用 --no-save-settings 避免每次转换覆盖用户保存的默认值
  • 命令文件可以预设所有格式特定选项;CLI 参数会覆盖命令文件中的值
  • 对于非常大的批次,考虑使用 Python API 编写 Python 脚本,以便更好地控制转换流水线