狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C# CAD批量轉(zhuǎn)換為圖片

admin
2021年12月14日 10:17 本文熱度 3350

最近寫了個(gè)工具,將指定目錄下的CAD文件批量轉(zhuǎn)換為圖片格式。

首先需要添加對(duì)應(yīng)的引用 :

在AutoCAD2008的環(huán)境下對(duì)應(yīng)AutoCAD 2008 Type Library 和 AutoCAD/ObjectDBX  Common 17.0 Type Library 這兩個(gè)引用,

筆者由于是AutoCAD2010,只找到了AutoCAD 2010 Type Library 沒能找到第二個(gè),百度后得知添加對(duì)文件“C:\Program Files\Common Files\Autodesk Shared\axdb18enu.tlb”的引用就可以了。

初始化AutoCAD,根據(jù)版本不同對(duì)應(yīng)的ProgramID也不相同:

 1 private static AcadApplication _app = null; 

1 #region 初始化CAD程序

 2 #region CAD ProgramID對(duì)照表

 3 //AutoCAD 2004

 4 //R16

 5 //AutoCAD.Application.16

 6 //AutoCAD 200

 7 //R16.

 8 //AutoCAD.Application.16.

 9 //AutoCAD 2006

10 //R16.

11 //AutoCAD.Application.16.

12 //AutoCAD 2007

13 //R17

14 //AutoCAD.Application.17

15 //AutoCAD 2008

16 //R17.

17 //AutoCAD.Application.17.

18 //AutoCAD 2009

19 //R17.

20 //AutoCAD.Application.17.

21 //AutoCAD 2010

22 //R18

23 //AutoCAD.Application.18

24 //AutoCAD 20

25 //R18.

26 //AutoCAD.Application.18.

27 #endregion

28 string programID = "AutoCAD.Application.18.0";

29 try

30 {

31     //如果CAD已經(jīng)打開,就直接獲取 

32     _app = (AcadApplication)Marshal.GetActiveObject(programID);

33 }

34 catch

35 {

36     try

37     {

38         //創(chuàng)建新的實(shí)例 

39         _app = (AcadApplication)new AcadDocument().Application;

40     }

41     catch (Exception ex)

42     {

43         return;

44     }

45 }

46 #endregion

然后加載CAD文件并轉(zhuǎn)換為圖片格式,轉(zhuǎn)換完成后需要關(guān)閉對(duì)應(yīng)的CAD文件釋放占用:

1 AcadDocument doc = null;
 2 string destPath = string.Empty;
 3 try
 4 {
 5     doc = _app.Documents.Open(pFile.FullName, true);
 6     doc.SetVariable("sdi", 0);
 7     doc.SetVariable("Filedia", 0);
 8     doc.SetVariable("RASTERPREVIEW", 1);
 9     doc.SetVariable("BACKGROUNDPLOT", 0);
10     doc.ActiveLayout.ConfigName = "PublishToWeb JPG.pc3";
11     doc.ActiveLayout.UseStandardScale = true;
12     doc.ActiveLayout.StandardScale = AcPlotScale.acScaleToFit;
13     doc.ActiveLayout.PlotType = AcPlotType.acExtents;
14     doc.ActiveLayout.CenterPlot = true;
15     doc.ActiveLayout.PlotRotation = AcPlotRotation.ac0degrees;
16     doc.ActiveLayout.PlotType = Autodesk.AutoCAD.Interop.Common.AcPlotType.acExtents;
17     doc.Plot.QuietErrorMode = true;
18     destPath = Path.Combine(pFile.Directory.FullName, Path.GetFileNameWithoutExtension(pFile.Name) + ".jpg");
19     doc.Plot.PlotToFile(destPath, "PublishToWeb JPG.pc3");
20 
21 }
22 catch (System.Exception e)
23 {
24     return false;
25 }
26 finally
27 {
28     if (doc != null) doc.Close(false);
29 }

在全部處理完成后需要關(guān)閉CAD應(yīng)用:

#region 關(guān)閉CAD程序
try
{
    _app.Quit();
}
catch (Exception ex)
{
    return;
}
#endregion

該文章在 2021/12/14 10:17:48 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved