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 绘图、许多不同编程语言的源代码文件提供相同的渲染功能。
从 下载部分 下载 DLLs 或 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。
以下源代码将 DWG 文件呈现为带有 C# 中的外部资源的 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 格式,如下所示:
- HTML 使用 HtmlViewOptions 呈现。
- JPG 使用 JpgViewOptions 渲染。
- PNG 使用 PngViewOptions 进行渲染。
- PDF 使用 PdfViewOptions 渲染。
在 C# 中获取 DWG 的布局和图层
CAD 文件可以包含多个布局和图层,您可以使用以下步骤获取这些布局和图层。
- 使用 Viewer 类加载 DWG 文件。
- 为 HTML 视图渲染创建 ViewInfoOptions。
- 使用查看器,获取具有布局的 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 的更多信息。如果您有任何疑问,请随时通过我们的 论坛 告诉我们。