将 SVG 转换为 PDF – Python 示例

SVG 文档转换为其他格式是 Aspose.SVG for Python via .NET API 的一个主要功能。为了利用 PDF 格式执行特定任务,通常需要将 SVG 转换为 PDF。 PDF 是一种普遍支持的文件格式,用于呈现图像、文档和书籍,使在线查看、打印和共享文件变得轻松。此外,PDF 还提供了一种安全格式,可通过加密和权限设置来保护知识产权。本文提供有关受支持的 SVG 到 PDF 转换方案以及如何使用 Aspose.SVG Python 库执行这些方案的信息。

在线 SVG 转换器

您可以检查 Aspose.SVG 功能并实时转换 SVG。只需从本地文件系统或 URL 加载 SVG,选择所需的输出格式,然后运行转换器即可。保存选项设置为默认值,您将立即收到作为单独文件的结果。

                
            

如果您想以编程方式将 SVG 转换为 PDF,请参阅以下 Python 代码示例。

使用convert_svg()方法将 SVG 转换为 PDF

Converter 类的静态方法可以通过几行代码将 SVG 转换为 PDF。这是最简单的转换方法:

以下代码片段可用于使用默认保存选项将 SVG 转换为 PDF:

 1import os
 2from aspose.svg import *
 3from aspose.svg.converters import *
 4from aspose.svg.drawing.skiasharp import *
 5from aspose.svg.saving import *
 6
 7# Activate the Aspose.SVG.Drawing.SkiaSharp feature
 8Configuration.set_extension(SkiaModule())
 9options = PdfSaveOptions()
10with SVGDocument("document.svg") as document:
11
12	# Convert SVG to PDF
13	Converter.convert_svg(document, options, "document.pdf")

PDF 保存选项 – PdfSaveOptions 类

Aspose.SVG for Python via .NET 中的 PdfSaveOptions 类用于指定将 SVG 文档保存为 PDF 文件的各种选项。此类允许您根据您的要求自定义 PDF 输出。以下是PdfSaveOptions类的一些关键属性:

PropertyDescription
jpeg_qualitySet the quality level for JPEG images within the PDF. A higher quality setting improves image fidelity but increases file size. The default value is 95.
cssGets a CssOptions object which is used for configuration of CSS properties processing.
document_infoThis property contains information about the output PDF document. Add metadata to the PDF, such as title, author, subject, and keywords.
background_colorThis property sets the color that will fill the background of every page. By default, this property is Transparent.
page_setupThis property gets a page setup object and uses it for configuration output page-set.
horizontal_resolutionSets the horizontal resolution for output images in pixels per inch. The default value is 300 dpi.
vertical_resolutionSets the vertical resolution for output images in pixels per inch. The default value is 300 dpi.
encryptionThis property gets or sets encryption details. If it is not set, then no encryption will be performed.
form_field_behaviourThis property specifies the behavior of form fields in the output PDF document.

注意:使用 PdfSaveOptions 类实现的选项继承自 PdfRenderingOptions 类。

以下 Python 代码示例展示了在将 SVG 转换为 PDF 时如何使用保存选项。

 1import os
 2import aspose
 3from aspose.svg import *
 4from aspose.svg.converters import *
 5from aspose.svg.drawing.skiasharp import *
 6from aspose.svg.rendering import *
 7from aspose.svg.drawing import *
 8from aspose.svg.saving import *
 9
10# Initialize an SVG document from a file
11input_folder = "data/"
12output_folder = "output/"
13src_file = os.path.join(input_folder, "document.svg")
14output_file = os.path.join(output_folder, "document.pdf")
15if not os.path.exists(output_folder):
16	os.makedirs(output_folder)
17
18# Activate the Aspose.SVG.Drawing.SkiaSharp feature
19Configuration.set_extension(SkiaModule())
20
21with SVGDocument(src_file) as document:
22	options = PdfSaveOptions()
23	options.background_color = aspose.pydrawing.Color.transparent
24	options.page_setup.sizing = SizingType.FIT_CONTENT
25	options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
26	options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
27	options.jpeg_quality = 80
28
29	# Convert SVG to PDF
30	Converter.convert_svg(document, options, output_file)

使用 render_to() 方法将 SVG 转换为 PDF

考虑使用 render_to(device) 方法将 SVG 转换为 PDF 的场景。以下代码片段可用于通过显式指定的渲染选项将 SVG 转换为 PDF。此外,Python 示例将展示如何在文件系统中配置源文件和输出文件的路径:

 1import os
 2from aspose.svg import *
 3from aspose.svg.rendering import *
 4from aspose.svg.rendering.pdf import *
 5
 6# Initialize an SVG document from a file
 7input_folder = "data/"
 8output_folder = "output/"
 9src_file = os.path.join(input_folder, "document.svg")
10output_file = os.path.join(output_folder, "document.pdf")
11if not os.path.exists(output_folder):
12    os.makedirs(output_folder)
13
14with SVGDocument(src_file) as document:
15    # Initialize an instance of the PdfRenderingOptions class and set custom peg_quality and page_setup properties
16    pdf_rendering_options = PdfRenderingOptions()
17    pdf_rendering_options.jpeg_quality = 10
18    pdf_rendering_options.page_setup.sizing = SizingType.FIT_CONTENT
19
20    # Initialize an instance of the PdfDevice class
21    with PdfDevice(pdf_rendering_options, output_file) as device:
22        # Render SVG to PDF and send the document to the rendering device
23        document.render_to(device)

PdfRenderingOptions 是 Python API 中的一个类,提供将 SVG 内容渲染为 PDF 格式的选项。它允许自定义渲染过程的各个方面,例如背景颜色、页面设置、分辨率、加密和 JPEG 质量。 PdfRenderingOptions 类与特定设备 PdfDevice 结合使用,它表示渲染的 SVG 内容的目标输出格式。

注意: PdfRenderingOptions 类的关键属性与 PdfSaveOptions 类的关键属性相同,因为 PdfSaveOptions 继承自 PdfRenderingOptions

您可以使用我们的免费在线 SVG 到 PDF 转换器 将 SVG 转换为 PDF,该转换器质量高、简单且快速。只需上传 SVG,进行转换,几秒钟内即可获得结果!它快速、简单且完全免费!

文本“SVG 到 PDF 转换器”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.