最近做一个项目,要求将dwg文件转化为pdf,开发工具VS2010 + AutoCad 2011,
在网上查了很多代码都有各种问题,解决重重的问题,终于实现了批量转化。
1.首先引入com组件
AutoCAD 2011 Type Library
AutoCAD/ObjectDBX Common18.0 Type Library
2.创建/获取CAD实例
private static AcadApplication _app = null; private static void Initialization() { string programID = "AutoCAD.Application.18.1"; try { //如果CAD已经打开,就直接获取 _app = (AcadApplication)Marshal.GetActiveObject(programID); } catch { try { //创建新的实例 _app = (AcadApplication)new AcadDocument().Application; } catch { throw; } } }
关于AutoCAD2011对应的版本是AutoCAD.Application.18.1
关于创建CAD实例的方法,网上流传的版本是
app = new AcadApplication();
app = new AcadApplicationClass();
经过测试上述两种方法对于AutoCad 2011都报错。。
所以采取了_app = (AcadApplication)new AcadDocument().Application;
3.dwg批量转换成pdf
public static void Dwg2Pdf(IEnumerable<FileInfo> files) { Initialization(); AcadDocument doc = null; string destPath = string.Empty; try { foreach (var f in files) { doc = _app.Documents.Open(f.FullName,true); doc.SetVariable("sdi", 0); doc.SetVariable("Filedia", 0); doc.SetVariable("RASTERPREVIEW", 1); doc.SetVariable("BACKGROUNDPLOT", 0); doc.ActiveLayout.ConfigName = _cfg.AUTOCAD_PC3; doc.ActiveLayout.UseStandardScale = true; doc.ActiveLayout.StandardScale = AcPlotScale.acScaleToFit; doc.ActiveLayout.PlotType = AcPlotType.acExtents; doc.ActiveLayout.CenterPlot = true; doc.ActiveLayout.PlotRotation = AcPlotRotation.ac0degrees; doc.ActiveLayout.PlotType = Autodesk.AutoCAD.Interop.Common.AcPlotType.acExtents; doc.Plot.QuietErrorMode = true; destPath = Path.Combine(f.Directory.FullName, Path.GetFileNameWithoutExtension(f.Name) + ".pdf"); doc.Plot.PlotToFile(destPath); if (doc != null) doc.Close(false); } } catch (System.Exception e) { throw e; } finally { try { doc.Close(false); _app.Quit(); } catch { } } }
需要注意几点
1.doc.SetVariable("BACKGROUNDPLOT", 0);一定要设置为0,否则只能转换第一个文件,第二个文件就报错。
2.doc.ActiveLayout.ConfigName不同版本的CAD都不一样,有的是DWGtoPDF.pc3也有的是DWG to PDF.pc3
相关推荐
使用C#开发的将DWG文件转换为PDF的程序,调用的CAD 2010接口,需要先安装cad 2010
CAD DWG批量转PDF工具 CAD DWG PDF 曾桂晃 山寨天王 www.shanzhaitianwang.51.com
“DWG批量转PDF工具V2.1”作为AutoCAD插件运行,即只能在AutoCAD环境下使用,首先需要安装Adobe Acrobat Professional9.0、pdfFactroy3.35-4.5,AutoCAD软件版本支持2006-2012。DWG转PDF工具V2.1能够实现批量图纸...
无需AUTOCAD,即可将dwg文件转换成为pdf,小巧快速,是我见过的最好的转换软件啊
“鹏宇成DWG批量转PDF工具”作为AutoCAD插件运行,即只能在AutoCAD环境下使用,AutoCAD软件版本支持2006-2011。DWG转PDF工具能够实现批量图纸转换为PDF文件。能够帮助使用者快速、准确实现批量图纸转换为PDF文件的...
利用pyautocad将CAD文件批量打印为PDF文件。使用该段代码需要安装autocad,python。本人使用环境python3.5,autocad2014。运行代码会自动打开autocad。
Excel.Doc.Dwg批量转CAD 转换材料清单、杆位明细表等为pdf
autocad2010版本,c#,cad com组件,dwg文件批量转pdf核心源码,
将AutoCad的DWG文件转换为pdf格式的dll文件,文件内包括32位与64位
FoxPDF DWG to PDF Converter是是一款可以将DWG转PDF格式转换器,该软件可以将批量dwg文件转换成pdf文件,也支持DXF和DWF文件,转换后还可以进行加密,没有权限无法修改和浏览,全方位保护文件的安全,需要的朋友快...
放在文件夹内运行,可把文件夹内dwg格式文件打印为pdf,注:打印范围为图形界限
可以把autocad 的dwg、dxf文件在R12到autocad2010各个版本之间进行转换,既是说在您的电脑中只需安装一个版本的autocad就能把各个版本的cad图形打开。
AutoCAD转换成PDF转换器(pdf转换成cad转换器免费版)批量转换AutoCAD到PDF是容易的。AutoCAD转PDF格式软件是AutoCAD(DWG,DWF,DXF)文档转换成Adobe PDF最佳解决方案。...它支持AutoCAD DWG格式(DWG转换成PDF), AutoC
solidworks工程图转换格式,让你轻松实现
Auto CAD的DWG图纸,通过Java转PDF文件格式
1.可以打开并浏览ACAD2018版本一下dwg/dxf图形文件 2.可以对线进行均匀分点并导出点位坐标 3.可以导出图形元素信息 4.可以保存ACAD格式文件 5.支持二次开发绘图功能等
使用Aspose.cad19.5通过Java转pdf,下载即可使用
这事AutoCAD文件DWG的格式描述,希望对AutoCAD的二次开发的朋友有所帮助
使用方法:1.安装cad2010 2.执行工具exe,选择dwg文件夹,原位置输出对应PDF 3.C#