CAD(計算機輔助設計)圖紙通常用於使用 CAD 軟件程序創建建築計劃和模型。一些著名的 AutoCAD 文件格式是 DWG、DXF、DGN、DWF。我們在另一篇文章中討論了使用 Java 查看 CAD 圖紙。今天,在本文中,我們將討論如何在 .NET 應用程序中使用 C# 以編程方式查看 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 的步驟。

以下源代碼轉換 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 文件的步驟。

以下源代碼在 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 格式,如下所示:

在 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 的某些特定圖層,可以通過設置圖層名稱來完成。

  • 使用 Viewer 類加載 DWG 繪圖。
  • 創建視圖選項。
  • 將 CAD 圖層添加到視圖選項
  • 使用 View 方法將 DWG 渲染為 HTML。

以下代碼在 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 文件時獲得模型演示。我們可以設置屬性來渲染所有非空佈局以及模型。

  • 使用 Viewer 類加載 DWG 圖紙。
  • 創建視圖選項。
  • 將渲染佈局屬性設置為 true。
  • 使用 View 方法將 DWG 渲染為 HTML。

以下代碼在 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 的更多信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。

也可以看看