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 应用程序中无缝地实现此转换。

相关推荐
2603_965148111 小时前
家居百货蓝海:API挖掘高复购率生活小商品
大数据·服务器·人工智能·python·生活
萧瑟余晖1 小时前
Java深入解析篇三十三之密封类与接口(Sealed Classes)详解
java·开发语言
阿童木写作4 小时前
跨境电商图片翻译工具推荐:批量图片翻译+视频字幕翻译+智能抠图
python·macos·音视频·xcode
cui_ruicheng5 小时前
LangChain 应用开发(十四):Agent 上下文与记忆机制
服务器·人工智能·python·langchain
论迹复利5 小时前
FreeRTOS 在 RISC-V 上是如何“点火“的 —— 从 main() 到第一个任务的完整链路
java·开发语言·risc-v
circuitsosk5 小时前
任务规划器的三种范式对比:ReAct、Plan-and-Execute 与 Tree-of-Thought 在真实业务中的取舍
前端·javascript·python·react.js·llm·ai agent
张宇Joaquin5 小时前
鲲鹏统一并行加速库KUPL--众核并行能力介绍
java·开发语言·网络
736c5 小时前
C语言-数组 07
c语言·开发语言
shehuiyuelaiyuehao5 小时前
算法31,前缀和,可被k整除的子数组
数据结构·python·算法
宸津-代码粉碎机6 小时前
AI攻防战升级!基于Spring AI构建Java应用自动免疫安全体系
java·大数据·开发语言·人工智能·python·安全·spring