如何使用 IronPDF 在 C# 中创建新的 PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF使 C# 开发人员能够通过编程方式创建新的 PDF 文档,使用 PdfDocument 构造函数创建空白 PDF,从各种来源导入现有 PDF,或将 HTML、图像、RTF、Markdown 和 XML 转换为 PDF 格式。 无论是构建商业报告、生成发票,还是从 Web 内容创建动态文档,IronPDF 都能为 .NET 应用程序中的 PDF 生成提供工具。

快速入门:用C#创建PDF——支持HTML转PDF与图片转PDF

// 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");
// 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");
' 1. Install IronPDF from NuGet
' 2. Create a blank PDF
Dim pdf As New IronPdf.PdfDocument(270, 270)

' 3. Or convert HTML to PDF
Dim renderer As New IronPdf.ChromePdfRenderer()
Dim pdfFromHtml As IronPdf.PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello PDF!</h1>")

' 4. Save your PDF
pdf.SaveAs("myNewPdf.pdf")
$vbLabelText   $csharpLabel
  1. 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronPdf

    PM > Install-Package IronPdf
  2. 复制并运行这段代码。

    new IronPdf.PdfDocument { DefaultPageSize = new IronPdf.PageSize(270,270) }.SaveAs("blankPage.pdf");
  3. 部署到您的生产环境中进行测试

    通过免费试用立即在您的项目中开始使用IronPDF

    arrow pointer


如何创建空白 PDF 示例?

创建PDF对象的方法有多种。 从最简单的方法开始,只需要 PDF 的宽度和高度。 此构造函数创建一个新的空白 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")
$vbLabelText   $csharpLabel

创建空白 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")
$vbLabelText   $csharpLabel

导入后,您可以执行各种操作,如提取文本和图像添加注释应用数字签名


如何从其他格式转换?

除了前面提到的获取 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")
$vbLabelText   $csharpLabel

哪些格式可转换为 PDF?

IronPdf 支持多种格式的转换:

生成的PDF可以使用嵌入式PDF查看器查看,如此处所示。 下面的 iframe 显示输出的 PDF。

对于高级应用场景,可探讨 渲染 WebGL 站点、处理 JavaScript 延迟,或实施 自定义日志以排除转换问题。

常见问题解答

如何安装库以开始用 C# 创建 PDF?

通过 Visual Studio 中的 NuGet 包管理器安装 IronPDF。您可以在 NuGet 包管理器界面中搜索“IronPDF”,或使用包管理器控制台输入命令“Install-Package IronPdf”进行安装。安装完成后,您可以立即使用 PdfDocument 构造函数或 ChromePdfRenderer 类开始创建 PDF 文件。

创建空白 PDF 文档的最快方法是什么?

使用 IronPDF 创建空白 PDF 的最快方法是使用带有宽度和高度参数的 PdfDocument 构造函数:new IronPdf.PdfDocument(270, 270).SaveAs('blank.pdf')。尺寸以点(1/72 英寸)为单位指定。您还可以设置自定义页面尺寸、方向,并添加作者和标题等元数据。

我能否将 HTML 内容转换为 PDF 格式?

是的,IronPDF 擅长使用 ChromePdfRenderer 类进行 HTML 转 PDF 转换。只需创建一个渲染器实例并调用 RenderHtmlAsPdf() 方法即可:var renderer = new IronPdf.ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf('

Hello PDF!

')。该功能支持完整的 HTML5、CSS3 和 JavaScript 渲染。

哪些文件格式可以转换为 PDF?

IronPDF 支持将多种格式转换为 PDF,包括 HTML、图像(JPG、PNG、GIF、BMP)、RTF 文档、Markdown 文件和 XML。每种格式都有特定的转换方法——例如,使用 RenderHtmlAsPdf() 处理 HTML,使用 ImageToPdf() 处理图像,以及针对其他格式的专用渲染器。

如何在 PDF 文档中添加自定义元数据?

使用 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 文档中添加多页?

使用 PdfDocument 对象上的 AppendPage() 方法可动态添加空白页。IronPDF 还支持在特定位置插入页面、从其他 PDF 中复制页面,以及合并多个 PDF 文档。除非另有指定,否则每个新页面都会继承默认页面大小。

支持哪些页面尺寸和方向?

IronPDF 支持以点为单位指定的自定义纸张尺寸,以及 Letter、A4 和 Legal 等预定义格式。您可以设置页面方向(纵向或横向),并创建混合页面尺寸的文档。自定义尺寸可让您精确控制标签或名片等特殊应用。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 18,560,885 | 版本: 2026.4 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronPdf
运行示例看着你的HTML代码变成PDF文件。