CAD(計算機輔助設計)圖紙通常用於使用 CAD 軟件程序創建建築計劃和模型。一些著名的 AutoCAD 文件格式是 DWG、DXF、DGN、DWF。我們在另一篇文章中討論了使用 Java 查看 CAD 圖紙。今天,在本文中,我們將討論如何在 .NET 應用程序中使用 C# 以編程方式查看 CAD 文件。
下面簡要介紹以下主題:
- .NET API 渲染 CAD 文件.
- 轉換 CAD 文件以呈現為 HTML、JPG、PNG 或 PDF.
- 獲取 DWG 的佈局和圖層.
- 渲染 DWG 圖紙的 CAD 圖層.
- 渲染 DWG 圖紙的 CAD 佈局.
.NET CAD 查看器 API – DWG、DXF、DWF、DGN
在本文中,我將使用 GroupDocs.Viewer for .NET,它允許在 .NET 應用程序中以編程方式將 DWG 等 CAD 文件渲染為 PDF、JPG、PNG 和 HTML。除了 DWG,API 還支持 DWF、DGN、DWT、DXF、IFC、STL、繪圖儀文檔和更多。
除了 CAD 文件格式外,API 還為文字處理文檔、電子表格、演示文稿、網頁、圖像、矢量、電子書、Visio 繪圖以及許多不同編程語言的源代碼文件提供相同的渲染功能。
從 下載部分 下載 DLL 或 MSI 安裝程序,或通過 NuGet 在您的 .NET 應用程序中安裝 API。
PM> Install-Package GroupDocs.Viewer
在 C# 中將 CAD 繪圖轉換為 HTML、PNG、JPG 或 PDF 查看
在本文中,我僅使用 DWG 格式轉換和渲染為其他格式並附有示例。讓我們從 DWG 設計文件的轉換開始,使用 C# 將其呈現為具有嵌入式和外部資源選項的 HTML。
使用 C# 中的嵌入式資源將 DWG 轉換為 HTML
以下是如何將 DWG 文件轉換為 HTML 的步驟。
- 使用 Viewer 類加載 DWG 文件。
- 使用 forEmbeddedResources 方法創建 HtmlViewOptions。
- 使用 View 方法將 .dwg 渲染為 HTML。
以下源代碼轉換 DWG 文件並使用 C# 將其呈現為具有嵌入式資源的 HTML。
// 使用 C# 渲染 DWG CAD 繪圖以查看為具有嵌入式資源的 HTML
using (Viewer viewer = new Viewer("drawing.dwg"))
{
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("page_{0}.html");
viewer.View(viewOptions);
}
在 C# 中使用外部資源將 DWG 轉換為 HTML
以下是轉換 DWG 文件並將其渲染為具有外部資源的 HTML 文件的步驟。
- 使用 Viewer 類加載 DWG 文件。
- 使用 forExternalResources 方法創建 HtmlViewOptions。
- 使用 View 方法將 .dwg 呈現為 HTML。
以下源代碼在 C# 中將 DWG 文件呈現為具有外部資源的 HTML。
// 使用 C# 渲染 C# CAD 繪圖以使用外部資源查看為 HTML
using (Viewer viewer = new Viewer("drawing.dwg"))
{
HtmlViewOptions viewOptions = HtmlViewOptions.ForExternalResources(
"page_{0}.html","page_{0}/resource_{1}","page_{0}/resources");
viewer.View(viewOptions);
}
在 C# 中將 DWG 轉換為 PDF、JPG 和 PNG
就像轉換為 HTML 格式一樣,DWG 文件可以使用相應的 ViewOptions 呈現為 PDF、PNG 和 JPG 格式,如下所示:
- 使用 HtmlViewOptions 呈現 HTML。
- 使用 JpgViewOptions 渲染 JPG。
- 使用 PngViewOptions 進行 PNG 渲染。
- 使用 PdfViewOptions 進行 PDF 渲染。
在 C# 中獲取 DWG 的佈局和圖層
CAD 文件可以包含多個佈局和圖層,您可以使用以下步驟獲取這些佈局和圖層。
- 使用 Viewer 類加載 DWG 文件。
- 為 HTML 視圖呈現創建 ViewInfoOptions。
- 使用 Viewer,獲取具有佈局的 CadViewInfo。
- 從 CadViewInfo 獲取佈局並迭代它們。
- 同樣,從 CadViewInfo 獲取圖層並對其進行迭代。
以下代碼顯示瞭如何使用 C# 獲取 ا DWG 文件的佈局和圖層。
// 在 C# 中獲取 DWG CAD 繪圖的佈局和圖層
using (Viewer viewer = new Viewer("drawing.dwg"))
{
ViewInfoOptions viewInfoOptions = ViewInfoOptions.ForHtmlView();
CadViewInfo viewInfo = viewer.GetViewInfo(viewInfoOptions) as CadViewInfo;
Console.WriteLine("File type: " + viewInfo.FileType);
Console.WriteLine("Pages count: " + viewInfo.Pages.Count);
foreach (Layout layout in viewInfo.Layouts)
Console.WriteLine(layout);
foreach (Layer layer in viewInfo.Layers)
Console.WriteLine(layer);
}
在 C# 中渲染 DWG 文件的 CAD 圖層
如果您不想渲染所有圖層而只想渲染 DWG 的某些特定圖層,可以通過設置圖層名稱來完成。
以下代碼在 C# 中渲染 DWG 格式的 CAD 文件的圖層。
// 在 C# 中渲染 .dwg CAD 繪圖層
using (Viewer viewer = new Viewer("drawing.dwg"))
{
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources();
viewOptions.CadOptions.Layers = new List<Layer>
{
new Layer("Walls"),
new Layer("Windows")
};
viewer.View(viewOptions);
}
在 C# 中渲染 DWG 文件的 CAD 佈局
默認情況下,我們僅在渲染 CAD 文件時獲得模型演示。我們可以設置屬性來渲染所有非空佈局以及模型。
以下代碼在 C# 中呈現所有非空佈局以及具有 DWG 格式的 CAD 繪圖模型。
// 在 C# 中渲染 .dwg CAD 繪圖的佈局
using (Viewer viewer = new Viewer("drawing.dwg"))
{
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources();
viewOptions.CadOptions.RenderLayouts = true;
viewer.View(viewOptions);
}
獲取免費的 API 許可證
您可以獲得免費的臨時許可證,以便不受評估限制地使用 API。
結論
最後,我希望您已經了解如何在 .NET 應用程序中使用 C# 查看 CAD 文件。此外,您還了解瞭如何在應用程序中獲取和顯示模型、佈局和 CAD 文件層。您必須有信心使用 C# 構建自己的 CAD 查看器。您可以體驗在線應用程序以查看您的任何文件。這些是使用 GroupDocs.Viewer 構建的。
您可以使用 文檔 了解有關 GroupDocs.Viewer for .NET 的更多信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。