CAD文件处理控件Aspose.CAD教程:在 Python 中将 SVG 转换为 PDF

如果您处理二维图形,SVG文件格式是最广泛使用的文件格式。这种文件格式具有高度可扩展性,并且质量极佳。然而,在文档共享、打印或存档方面, PDF文件格式因其增强的可移植性而更受青睐。

在本文中,我们将使用 Python 以编程方式将 SVG 转换为 PDF。我们将通过 .NET 使用 ++Aspose.CAD for Python++,这款 CAD SDK 功能强大,足以顺利完成 SVG 到 PDF 的转换,我们将通过编写代码示例来演示其功能。

Aspose.CAD 试用版下载

CAD SDK安装

你可以通过在 CMD 中运行以下命令来通过 .NET 安装 ++Aspose.CAD for Python++

复制代码
pip install aspose-cad

如果您不喜欢使用 CMD 选项,您可以下载SDK 文件。

使用 Python 将 SVG 转换为 PDF - 代码片段

SDK 已安装,现在我们将实现该功能。

请按照以下步骤操作:

  • 定义工作目录的路径并应用 Aspose.CAD 许可证。
  • 通过调用load方法加载源 SVG 文件。
  • 创建CadRasterizationOptions类的实例。
  • 设置页面高度。
  • 设置页面宽度。
  • 实例化PdfOptions类的实例。
  • 调用保存方法将文件保存为 PDF。

以下代码示例展示了如何以编程方式在 Python 中将 SVG 转换为 PDF:

复制代码
import aspose.cad as cad
from aspose.cad.imageoptions import PdfOptions
# Define the path for the working directory and apply Aspose.CAD license.
dataDir = "data"
license = cad.License()
license.set_license("latest.lic")
# Load the source SVG file by calling the load method.
image = cad.Image.load(dataDir+"paths.svg")
# Create an instance of the CadRasterizationOptions class.
cadRasterizationOptions = cad.imageoptions.CadRasterizationOptions()
# Set the page height.
cadRasterizationOptions.page_height = 800.5
# Set the page width.
cadRasterizationOptions.page_width = 800.5
cadRasterizationOptions.zoom = 0.5
cadRasterizationOptions.layers = "Layer"
# Instantiate an instance of the PdfOptions class. 
options = PdfOptions()
options.vector_rasterization_options = cadRasterizationOptions
# Invoke the save method to save the file as PDF.
image.save(dataDir+"result.pdf", options)

输出:

总之,**Aspose.CAD for Python via .NET**提供了一种简洁易用的方法,可以在 Python 中将 SVG 转换为 PDF。最重要的是,该解决方案不依赖任何第三方库。您可以在 Python 应用程序中无缝地实现此转换。

相关推荐
Highcharts.js24 分钟前
缺失数据可视化图表开发实战|Highcharts创建人员出生统计面积图表示例
开发语言·前端·javascript·信息可视化·highcharts·图表开发
测试员周周5 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
测试19985 小时前
软件测试 - 单元测试总结
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
曲幽7 小时前
我用了FastApiAdmin后,连夜把踩过的坑都整理出来了
redis·python·postgresql·vue3·fastapi·web·sqlalchemy·admin·fastapiadmin
杜子不疼.7 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号38 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia8 小时前
Qt——编辑交互功能的实现
开发语言·qt
石山代码9 小时前
C++ 内存分区 堆区
java·开发语言·c++
前端若水9 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
无风听海9 小时前
C# 隐式转换深度解析
java·开发语言·c#