如何使用 IronPDF 在 C# 中创建新的 PDF
IronPDF使C#开发人员可以通过使用PdfDocument构造函数为空白PDF、从各种来源导入现有PDF,或将HTML、图像、RTF、Markdown和XML转换为PDF格式来编程创建新的PDF文档。 无论是构建商业报告、生成发票,还是从 Web 内容创建动态文档,IronPDF 都能为 .NET 应用程序中的 PDF 生成提供工具。
PdfDocument构造函数API在所支持的运行时(.NET Framework 4.6.2+、.NET Core 3.1+、.NET 5及更高版本)之间一致,尽管在较旧的运行时上的性能将与下述基准有所不同。)}
快速入门:用 C# 创建你的第一个 PDF
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs-1.cs
// 1. Install IronPDF from NuGet
// 2. Create a blank PDF
var pdf = new IronPdf.PdfDocument(270, 270);
// 3. Or convert HTML to PDF
var renderer = new IronPdf.ChromePdfRenderer();
var pdfFromHtml = renderer.RenderHtmlAsPdf("<h1>Hello PDF!</h1>");
// 4. Save your PDF
pdf.SaveAs("myNewPdf.pdf");
Imports IronPdf
' 1. Install IronPDF from NuGet
' 2. Create a blank PDF
Dim pdf As New PdfDocument(270, 270)
' 3. Or convert HTML to PDF
Dim renderer As New ChromePdfRenderer()
Dim pdfFromHtml As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello PDF!</h1>")
' 4. Save your PDF
pdf.SaveAs("myNewPdf.pdf")
最小工作流程(5 个步骤)
- 从 NuGet 下载用于创建新 PDF 的 IronPDF
- 使用 PdfDocument 构造函数创建空白 PDF
- 从文件、URL、字节数组或 JSON 导入现有 PDF
- 将多种格式转换为 PDF,如 HTML、RTF、Markdown、图像和 XML
- 导出PDF文档
创建一个空白PDF示例
创建PDF对象的方法有多种。 从最简单的方法开始,只需要 PDF 的宽度和高度。 此PdfDocument构造函数创建了一个新的空白PDF,准备进行定制和使用。 尺寸是以点(1/72 英寸)为单位指定的,可以为标签、名片或自定义文档格式等各种应用提供精确的尺寸。
对于需要对页面尺寸进行更多控制的开发人员,IronPDF 支持 自定义纸张尺寸 和各种预定义格式,包括 Letter、A4 和 Legal 尺寸。 您可以使用页面方向功能设置不同的方向。
空白 PDF 需要哪些参数?
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs.cs
using IronPdf;
PdfDocument pdf = new PdfDocument(270, 270);
pdf.SaveAs("blankPage.pdf");
Imports IronPdf
Dim pdf As New PdfDocument(270, 270)
pdf.SaveAs("blankPage.pdf")
在不同配置下对 PDF 生成进行性能测试
| 指标 | 空白 A4 | A4 + 元数据 | A4(10页) | 信函 | 自定义 (270×270) |
|---|---|---|---|---|---|
| 平均创建时间 | 266.6 毫秒 | 279.4 毫秒 | 287.2 毫秒 | 262.4 毫秒 | 280.6 毫秒 |
| 输出文件大小 | 0.60 KB | 3.82 KB | 1.79 KB | 0.60 KB | 0.60 KB |
| 每次调用的内存 | 1.62 MB | 1.61 MB | 1.64 MB | 1.61 MB | 1.62 MB |
| 生成的页面 | 1 | 1 | 10 | 1 | 1 |
根据这些基准测试结果,可以合理推断出,所有测试版本的平均生成时间均维持在约 260-290 毫秒之间。 创建空白 PDF 后,您可以通过添加页眉和页脚、应用水印或插入图片来增强其效果。
如何从文件导入 PDF?
在修改或转换PDF之前,必须先将其导入为PdfDocument对象。 使用FromFile方法完成此操作。 在同一个类中,还支持从 JSON、字节数组、流和 URL 导入 PDF。 这种灵活性适合需要合并多个 PDF、提取特定页面或修改现有文档的场景。
在处理存储在云服务中的 PDF 时,IronPDF 与 Azure Blob Storage 和其他云平台集成。 您可以从内存流加载 PDF,无需访问文件系统即可进行高效处理。
哪些导入方法可用?
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs-from-file.cs
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
pdf.SaveAs("export.pdf");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
pdf.SaveAs("export.pdf")
导入后,您可以执行各种操作,如提取文本和图像、添加注释或应用数字签名。
如何从其他格式转换?
除了之前提到的获取PdfDocument对象的方法之外,您还可以将各种格式转换为PDF。 最复杂的方法是将 HTML 转换为 PDF,它可以使用 Chrome 引擎将 HTML 及其所有资产(包括 JavaScript、图片、链接和 CSS 样式)一起渲染出来。除 HTML 外,您还可以将其他格式转换为 PDF,如图像、RTF、Markdown 和 XML。
IronPDF的Chrome渲染引擎确保像素完美的转换,保持您的源内容的视觉完整性。 渲染器支持包括 HTML5、CSS3 和 JavaScript 框架在内的现代网络标准,因此适合将复杂的网页或 Razor 视图转换为 PDF。
以下代码片段演示了如何将 HTML 转换为 PDF。 HTML转换使用IronPDF的渲染引擎来保持所有样式应用下的内容完整性。 您还可以将 Markdown 转换为 PDF、将 XML 转换为 PDF 和将 图像转换为 PDF。
我应该配置哪些渲染选项?
:path=/static-assets/pdf/content-code-examples/how-to/create-new-pdfs-from-html.cs
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1800);
renderer.RenderingOptions.WaitFor.RenderDelay(5000);
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1800)
renderer.RenderingOptions.WaitFor.RenderDelay(5000)
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
' Create a PDF from a URL or local file path
Dim pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/")
' Export to a file or Stream
pdf.SaveAs("url.pdf")
哪些格式可转换为 PDF?
IronPDF 支持多种格式的转换:
- HTML 转 PDF:转换 HTML 字符串、HTML 文件或 URLs,完全支持 CSS 和 JavaScript
- 图像到 PDF:转换 JPG、PNG、GIF、BMP 和 TIFF 图像。
- 文档格式:转换 DOCX 和 RTF 文件
- 标记语言:转换 Markdown 和 XML
- ASP.NET页面:转换 ASPX 和 Razor 页面
生成的PDF可以使用嵌入式PDF查看器查看,如此处所示。 下面的 iframe 显示输出的 PDF。
对于高级应用场景,可探讨 渲染 WebGL 站点、处理 JavaScript 延迟,或实施 自定义日志以排除转换问题。
常见问题解答
如何安装库以开始用 C# 创建 PDF?
通过 Visual Studio 中的 NuGet 包管理器安装 IronPDF。您可以在 NuGet 包管理器界面中搜索“IronPDF”,或使用包管理器控制台输入命令“Install-Package IronPdf”进行安装。安装完成后,您可以立即使用 PdfDocument 构造函数或 ChromePdfRenderer 类开始创建 PDF 文件。
创建空白 PDF 文档的最快方法是什么?
using IronPDF 创建空白 PDF 的最快方法是使用带有宽度和高度参数的 PdfDocument 构造函数:new IronPdf.PdfDocument(270, 270).SaveAs('blank.pdf')。尺寸以点(1/72 英寸)为单位指定。您还可以设置自定义页面尺寸、方向,并添加作者和标题等元数据。
我能否将 HTML 内容转换为 PDF 格式?
是的,IronPDF在HTML到PDF转换方面表现出色,使用ChromePdfRenderer类。只需创建一个渲染器实例并使用RenderHtmlAsPdf()方法:var renderer = new IronPdf.ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf('<h1>Hello PDF!</h1>')。这支持完整的HTML5、CSS3和JavaScript渲染。
哪些文件格式可以转换为 PDF?
IronPDF 支持将多种格式转换为 PDF,包括 HTML、图像(JPG、PNG、GIF、BMP)、RTF 文档、Markdown 文件和 XML。每种格式都有特定的转换方法——例如,使用 RenderHtmlAsPdf() 处理 HTML,使用 ImageToPdf() 处理图像,以及针对其他格式的专用渲染器。
如何在 PDF 文档中添加自定义元数据?
using IronPDF 创建 PDFDocument 对象后,可通过访问 MetaData 属性设置自定义信息:pdf.MetaData.Author = '您的姓名'; pdf.MetaData.Title = '文档标题'; pdf.MetaData.CreationDate = DateTime.Now。这些元数据有助于文档的整理和检索。
我可以从不同来源导入现有的 PDF 文件吗?
IronPDF 支持从多种来源导入现有 PDF 文件,包括本地文件、URL、字节数组或 JSON 数据。对于本地文件,请使用 PdfDocument.FromFile();对于基于 Web 的 PDF,请使用 FromUrl();对于字节数组数据,请使用 FromBytes()。这使您能够处理和修改现有的 PDF 文档。
如何在 PDF 文档中添加多页?
using PdfDocument 对象上的 AppendPage() 方法可动态添加空白页。IronPDF 还支持在特定位置插入页面、从其他 PDF 中复制页面,以及合并多个 PDF 文档。除非另有指定,否则每个新页面都会继承默认页面大小。
支持哪些页面尺寸和方向?
IronPDF 支持以点为单位指定的自定义纸张尺寸,以及 Letter、A4 和 Legal 等预定义格式。您可以设置页面方向(纵向或横向),并创建混合页面尺寸的文档。自定义尺寸可让您精确控制标签或名片等特殊应用。

