CAD 文件格式被设计师或建筑师用于在建筑、汽车、硬件等各个行业创建图纸。DWG 和 DXF 是使用最广泛的 CAD但是,您需要专门的软件来查看 DWG 和 DXF 文件中的内容。为了解决这个限制,您可以将 CAD 图纸转换为 PDF 格式。在本文中,您将学习如何使用 Java 自动将 CAD 转换为 PDF 以及将 DWG 和 DXF 文件转换为 PDF。
- Java CAD 到 PDF 转换器 API
- 使用 Java 将 DWG/DXF 转换为 PDF
- 使用 Java 将 DWG/DXF 中的画布大小设置为 PDF
- 在 Java 中将 CAD 中的自动缩放为 PDF
- 将 CAD 中的背景和绘图颜色设置为 PDF
- 使用 Java 将 CAD 文件中的特定图层转换为 PDF
Java CAD 到 PDF 转换器 API
Aspose.CAD for Java 是一个强大的 CAD 文件操作 API,可让您将 DWG 和 DXF 文件高保真地转换为 PDF。您可以 下载 API 的 JAR 或使用以下配置将其安装在基于 Maven 的应用程序中。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cad</artifactId>
<version>20.10</version>
<classifier>jdk16</classifier>
</dependency>
DWG 或 DXF 到 PDF Java 转换
以下是使用 Aspose.CAD for Java 将 DWG 或 DXF 文件转换为 PDF 的步骤。
- 使用 Image 类加载 DWG 或 DXF 文件。
- 创建一个 PdfOptions 类的对象。
- 使用 Image.save(String, ImageOptionsBase) 方法将 CAD 绘图保存为 PDF。
以下代码示例显示了如何使用 Java 将 DWG 转换为 PDF。
// 加载源 CAD 文件
com.aspose.cad.Image objImage = com.aspose.cad.Image.load("sample.dwg");
// 创建 PdfOptions 的实例
PdfOptions pdfOptions = new PdfOptions();
// 将 CAD 导出为 PDF
objImage.save("dwg-to-pdf.pdf", pdfOptions);
Java DWG 或 DXF 转 PDF - 设置画布大小
Aspose.CAD for Java 还允许您在将 CAD 转换为 PDF 时设置画布大小。因此,您可以指定转换后的 PDF 文档中的页面大小。以下是执行此操作的步骤。
- 使用 Image 类加载 CAD 的 DWG 或 DXF 文件。
- 创建 CadRasterizationOptions 类的实例。
- 分别使用 setPageWidth 和 setPageHeight 方法设置页面的宽度和高度。
- 创建 PdfOptions 类的对象。
- 使用 PdfOptions.setVectorRasterizationOptions() 方法设置 CadRasterizationOptions。
- 使用 Image.save(String, ImageOptionsBase) 方法将 DWG 或 DXF 转换为 PDF。
以下代码示例显示了如何在 DWG 或 DXF 中设置画布大小到 Java 中的 PDF 转换。
// 加载源 CAD 文件
com.aspose.cad.Image objImage = com.aspose.cad.Image.load("input.dwg");
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// 创建 PdfOptions 的实例
PdfOptions pdfOptions = new PdfOptions();
// 设置 VectorRasterizationOptions 属性
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
在 Java 中将 CAD 中的自动缩放为 PDF
您还可以在 CAD 到 PDF 转换中执行页面的自动缩放。当 CAD 绘图中的图层具有不同的尺寸时,此功能会非常有用。自动缩放功能根据 PDF 中统一的页面大小缩放图层。以下是执行自动缩放的步骤。
- 使用 Image 类加载 CAD 文件。
- 创建 CadRasterizationOptions 类的实例。
- 将 CadRasterizationOptions.setAutomaticLayoutsScaling 设置为 true。
- 创建 PdfOptions 类的实例并设置 PdfOptions.setVectorRasterizationOptions。
- 使用 Image.save(String, ImageOptionsBase) 方法将 CAD 绘图转换为 PDF。
以下代码示例显示了如何使用自动缩放将 DWG 转换为 PDF。
// 加载源 CAD 文件
com.aspose.cad.Image objImage = com.aspose.cad.Image.load("input.dwg");
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// 设置自动缩放
rasterizationOptions.setAutomaticLayoutsScaling(true);
// 创建 PdfOptions 的实例
PdfOptions pdfOptions = new PdfOptions();
// 设置 VectorRasterizationOptions 属性
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// 将 CAD 导出为 PDF
objImage.save("dwg-to-pdf.pdf", pdfOptions);
Java CAD 转 PDF - 设置背景和绘图颜色
默认情况下,CAD 绘图在 PDF 中以黑白颜色呈现。但是,您可以覆盖此功能并设置所需的背景和绘图颜色。以下是实现此目的的步骤。
- 使用 Image 类加载 DWG 或 DXF 文件。
- 创建 CadRasterizationOptions 类的实例。
- 使用 CadRasterizationOptions.setBackgroundColor 方法设置背景颜色。
- 使用 CadRasterizationOptions.setDrawColor 方法设置绘图颜色。
- 创建 PdfOptions 类的对象并设置 PdfOptions.setVectorRasterizationOptions。
- 使用 Image.save(String, ImageOptionsBase) 方法将 DWG 或 DXF 转换为 PDF。
以下代码示例显示了如何使用 Java 修改 DWG 或 DXF 到 PDF 转换中的颜色。
// 加载源 CAD 文件
com.aspose.cad.Image objImage = com.aspose.cad.Image.load("input.dwg");
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
// 设置背景和绘图颜色
rasterizationOptions.setDrawType(CadDrawTypeMode.UseDrawColor);
rasterizationOptions.setBackgroundColor(com.aspose.cad.Color.getBlue());
// 创建 PdfOptions 的实例
PdfOptions pdfOptions = new PdfOptions();
// 设置 VectorRasterizationOptions 属性
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// 将 CAD 导出为 PDF
objImage.save("dwg-to-pdf.pdf", pdfOptions);
使用 Java 将 CAD 的特定图层转换为 PDF
CAD 绘图通常由多个图层组成,在某些情况下,您可能只需将绘图的选定图层转换为 PDF。为此,您可以使用 CadRasterizationOptions.setLayers() 方法提供要转换的图层列表。以下代码示例显示了如何将 CAD 中的特定图层转换为 PDF 转换。
// 加载源 CAD 文件
com.aspose.cad.Image objImage = com.aspose.cad.Image.load("input.dwg");
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
rasterizationOptions.setPageWidth(1600);
rasterizationOptions.setPageHeight(1600);
ArrayList<String> layers=new ArrayList<String>();
layers.add("LayerA");
// 设置背景和绘图颜色
rasterizationOptions.setLayers(layers);
// 创建 PdfOptions 的实例
PdfOptions pdfOptions = new PdfOptions();
// 设置 VectorRasterizationOptions 属性
pdfOptions.setVectorRasterizationOptions(rasterizationOptions);
// 将 CAD 导出为 PDF
objImage.save("dwg-to-pdf.pdf", pdfOptions);
结论
在本文中,您学习了如何使用 Java 将 CAD 的 DWG 和 DXF 文件转换为 PDF。此外,您已经看到了可以根据需要自定义 CAD 到 PDF 转换的各种场景。您可以使用 文档 探索有关 Aspose 的 CAD API 的更多信息。