可缩放矢量图形 (SVG) 和可移植文档格式 (PDF) 是两种广泛使用的用于创建和显示图形和文档的格式。有时,您可能需要在 C# 应用程序中将 SVG 文件转换为 PDF 文档。针对此类场景,本文将介绍如何使用 C# 将 SVG 转换为 PDF。
SVG 到 PDF 转换器 - C# API 安装
要将 SVG 图像转换为 PDF 格式,您需要从 New Releases 部分配置 Conholdate.Total for .NET 或使用以下 NuGet 安装命令:
PM> NuGet\Install-Package Conholdate.Total
使用转换器在 C# 中将 SVG 转换为 PDF
您可以按照以下步骤在 C# 中将 SVG 转换为 PDF 文件:
- 使用 SVGDocument 类加载源 SVG 文件。
- 创建 PdfSaveOptions 类对象。
- 设置背景颜色。
- 将 SVG 转换为 PDF 文档。
下面的代码片段详细介绍了如何在 C# 中将 SVG 转换为 PDF:
using (var document = new Aspose.Svg.SVGDocument("circle1.svg"))
{
// 初始化 PdfSaveOptions 类的实例
var saveOptions = new Aspose.Svg.Saving.PdfSaveOptions();
saveOptions.BackgroundColor = System.Drawing.Color.Gray;
// 将 SVG 转换为 PDF
Aspose.Svg.Converters.Converter.ConvertSVG(document, saveOptions, Path.Combine(dataDir, "circle.pdf"));
}
使用渲染设备在 C# 中将 SVG 转换为 PDF
这是将 SVG 渲染为 PDF 文档格式的另一种方法。请按照以下步骤通过几个 API 调用来执行转换:
- 从文件初始化 SVG 文档。
- 初始化 PdfRenderingOptions 类的实例并设置自定义 PageSetup 和 JpegQuality 属性。
- 初始化 PdfDevice 类的实例。
- 将 SVG 渲染为 PDF 格式。
以下示例代码展示了如何在 C# 中将 SVG 转换为 PDF:
// 从文件初始化 SVG 文档
using (var document = new Aspose.Svg.SVGDocument(Path.Combine(dataDir, "circle.svg")))
{
// 初始化 PdfRenderingOptions 类的实例并设置自定义 PageSetup 和 JpegQuality 属性
var pdfRenderingOptions = new Aspose.Svg.Rendering.Pdf.PdfRenderingOptions();
pdfRenderingOptions.PageSetup.AnyPage = new Aspose.Svg.Drawing.Page(new Aspose.Svg.Drawing.Size(500, 500), new Aspose.Svg.Drawing.Margin(10, 10, 10, 10));
pdfRenderingOptions.JpegQuality = 10;
// 初始化 PdfDevice 类的实例
using (Aspose.Svg.Rendering.IDevice device = new Aspose.Svg.Rendering.Pdf.PdfDevice(pdfRenderingOptions, Path.Combine(dataDir, "out.pdf")))
{
// 将 SVG 渲染为 PDF 并将文档发送到渲染设备
document.RenderTo(device);
}
}
免费评估许可证
您可以获得免费临时许可证,以避免评估限制并测试 API 的全部功能。
加起来
将 SVG 转换为 PDF 在各种应用程序中都是一项有用的功能,尤其是在处理图形和文档时。通过遵循本指南,您已了解如何使用 C# 将 SVG 文件转换为 PDF 文档。它使您能够使用不同的方法将 SVG 到 PDF 转换功能嵌入到您的 .NET 应用程序中。如果您在此文件转换过程中遇到任何问题或错误,请联系我们,同时在 论坛 中提及所有详细信息。
常见问题解答
我可以自定义转换过程吗?
是的,您可以自定义转换过程。您可以在生成的 PDF 中控制页面大小、布局、字体、颜色等方面。
有什么限制需要注意吗?
虽然 SVG 到 PDF 的转换功能非常强大,但由于 SVG 内容的复杂性,可能会存在一些限制。高级 SVG 功能(例如动画)可能无法完美转换为 PDF。
有什么性能方面的考虑吗?
将复杂的 SVG 转换为 PDF 可能需要大量的计算资源。尽可能优化您的 SVG,并考虑对大批量转换进行异步处理。
如何安装 SVG 到 PDF 转换所需的库?
答:您可以使用 Visual Studio 中的 NuGet 包管理器安装所需的库。搜索并安装 Conholdate.Total 包。