爱折腾的孩纸

使用命令行生成DWG文件的预览图片

最近做的一个系统,需要有文件预览功能,不巧客户有大量AutoCAD的文件,于是研究了一下DWG文件生成预览图片的方法。

  1. 需要 Windows 环境

  2. 下载安装DWGTrueView软件:下载地址

  3. 打开一个DWG文件,对导出选项一些设置。可以用一个老外提供的文件,作为示例。

  4. 按Ctrl+P或菜单里的 Output->Plot 命令,打开 Plot 设置窗口。这里我们主要设置 plotter 导出的图片大小参数。
    1589526140-1-
    Printer/plotter里面,Name选择PublishToWeb PNG.pc3,然后点击Properties...按钮。
    1589526226-1-
    在Device and Document Settings选项卡中,找到Custom Paper Sizes,然后点击下方的Add...。
    1589526266-1-
    在添加向导中,选择Start from scratch,进入下一步。
    1589526298-1-
    填入需要的图片尺寸大小,单位为像素。
    1589526390-1-
    取个名字。下一步完成即可。回到刚才的窗口,可以看到刚刚添加的纸张大小。

    这有一份常见像素数量与尺寸的表格,可以作为对照。
    a50f4bfbfbedab64c77b5bb6fa36afc379311ebe

  5. 回到刚才的 Plot 设置窗口,如同所示,Paper size 选择刚刚添加的尺寸,Plot area 选择 Extents,Plot scale 选择 Fit to paper,Plot style table 选择 dwgviewer.ctb,默认的 monochrome.ctb 会使导出的文件为黑白的,其它默认。此时可点击 OK 按钮,导出一个文件测试一下。

  6. 当然我们需要的是能够自动完成导出,在软件安装目录(C:\Program Files\Autodesk\DWG TrueView 2021 - English)下面可以找到 accoreconsole.exe 程序,它可以执行批处理,完成导出工作。这个命令需要输入一个 DWG 文件,和一个脚本文件。参考https://blog.csdn.net/autodeskinventorapi/article/details/45075453

  7. 上面给的脚本可能只适用于完整的 AutoCAD,其中有些命令无法在 DWG TrueView 中执行,需要修改一下。同时我这里改成了导出 PNG 图像文件。如需要导出 PDF 文件,可仿照修改。由于某些命令无法执行,导出文件的文件名固定为 C:\Downloads\test.png,实际应用时可通过模板生成该脚本文件,然后再执行accoreconsole.exe。

;Command:
_plot
;Detailed plot configuration? [Yes/No] <No>: 
Yes
;Enter a layout name or [?] <Model>:
Model
;Enter an output device name or [?] <None>:
PublishToWeb PNG.pc3
;Enter paper size or [?] <ANSI A (11.00 x 8.50 Inches)>:
800W
;Enter drawing orientation [Portrait/Landscape] <Portrait>: 
Landscape
;Plot upside down? [Yes/No] <No>:
No
;Enter plot area [Display/Extents/Limits/View/Window] <Display>: 
Extents
;Enter plot scale (Plotted Inches=Drawing Units) or [Fit] <Fit>:
Fit
;Enter plot offset (x,y) or [Center] <0.00,0.00>:
Center
;Plot with plot styles? [Yes/No] <Yes>:
Yes
;Enter plot style table name or [?] (enter . for none) <>:
dwgviewr.ctb
;Plot with lineweights? [Yes/No] <Yes>:
Yes
;Enter shade plot setting [As displayed/legacy Wireframe/legacy Hidden/Visualstyles/Rendered] <As displayed>:

;Enter file name <C:\Work\solids-Model.pdf>:
C:\Downloads\test.png
;Save changes to page setup? Or set shade plot quality? [Yes/No/Quality] <N>:
No
;Proceed with plot [Yes/No] <Y>:
Yes

其中的800W为刚创建的纸张大小的名称。输出文件的目录一定要存在,否则会导致脚本执行错误。最后要多加一个空的换行。修改 output device 后,后面的参数表可能会有不同,需要运行一下,然后根据返回的结果进行修改。

  1. 编写一个 bat 文件进项测试。
cd "C:\Program Files\Autodesk\DWG TrueView 2021 - English"
c:
cls
accoreconsole.exe /i "C:\Downloads\GVR- Residential.dwg" /s "C:\Downloads\test.scr" /l en-US
PAUSE

没问题的话,导出工作完成后,会在对应的目录产生一个 test.png 文件。
test-1

评论