使用IRON SUITE

C# 创建 PDF - 使用 IronPDF 的完整指南

2025年四月9日
分享:

介绍

从HTML内容创建PDF文档已成为各种应用程序的基本需求,从生成发票到存档网页内容。 IronPDF 是一个强大且多功能的 .NET 库,简化了将 HTML 转换为 PDF 的过程,使开发人员能够轻松在 C# 中创建高质量的 PDF 文档。 在本文中,我们将探讨IronPDF的功能,并提供使用它进行PDF创建的分步指南。

如何使用IronPDF库在C#中创建PDF文件

  1. 创建一个新的 Visual Studio 项目

  2. 从NuGet包管理器添加IronPDF库

  3. 创建一个简单的PDF文件。

  4. 修改 PDF 文件。

  5. 添加页眉和页脚

  6. 包括外部样式表和脚本

  7. 包括图像和位图。

  8. HTML 文件到 PDF 的转换。

  9. URL到PDF转换。

IronPDF 简介

IronPDF 是一个 .NET 库,使开发人员能够轻松地将 HTML 转换为 PDF。 它支持广泛的功能,包括CSS、JavaScript,甚至嵌入图像。 使用 IronPDF,您可以创建与您的 HTML 网页完全相同的 PDF,从而确保格式之间的无缝转换。 此库对于需要即时生成动态PDF文档的Web应用特别有用。

IronPDF 允许开发人员将 PDF 功能无缝集成到 .NET 应用程序中,而无需手动管理 PDF 文件结构。 IronPDF 利用基于Chrome的渲染引擎将HTML页面(包括复杂的CSS、JavaScript和图像)转换为结构良好的PDF文档。 它可以用于生成报告、发票、电子书或任何需要以PDF格式呈现的文档。

IronPDF 功能多样,不仅支持渲染 PDF,还提供多种 PDF 操作选项,如编辑、表单处理、加密等。

IronPDF 的主要功能 C# 创建 PDF 文件

  1. HTML 转换为 PDF

    • HTML渲染IronPDF 可以用几行代码将HTML文档或网页(包括带有CSS、图像和JavaScript的HTML)直接转换为PDF文档。 这非常适合从动态网页内容生成PDF。

    • 支持现代HTML/CSS:IronPDF支持现代HTML5、CSS3和JavaScript以及各种PDF生成任务,确保您的基于网络的内容可以准确呈现为PDF格式,保留布局、字体和交互元素。

    • 高级渲染:它使用Chrome的渲染引擎(通过Chromium)进行精确的高质量PDF生成,使其比许多其他HTML到PDF库更可靠。
    • 网站 URL 转换为 PDFIronPDF 可以将网站的字符串 URL 作为输入并转换为 PDF。
  2. 自定义页眉和页脚

    • IronPDF允许开发人员向PDF文档添加自定义页眉和页脚,其中可以包括动态内容,如页码、文档标题或自定义文本。
    • 页眉和页脚可以添加到单个页面,或者作为整个文档中一致的元素。
  3. 支持PDF中的JavaScript

    • IronPDF 在生成 PDF 之前允许在 HTML 内容中执行 JavaScript。 这允许动态内容渲染,例如在生成的PDF中进行表单计算或交互性。
    • 在从动态网页创建PDF或生成需要客户端逻辑的报告时,JavaScript非常有用。
  4. 编辑现有PDF

    • IronPDF 提供编辑现有PDF的能力。 您可以修改文本、图像,并向现有的PDF文件添加注释。 此功能可用于在PDF文件中加水印、添加签名或更新内容。
    • 文本提取和修改使您能够以编程方式操作PDF文档中的内容。
  5. 合并和拆分PDF

    • IronPDF 允许您将多个 PDF 文件合并为一个文档,或将大型 PDF 拆分为较小文件。 这对于需要将文档合并或拆分为更易管理部分的工作流程非常理想。
  6. 支持交互式表单

    • 您可以使用IronPDF创建、填写和操作PDF表单。 它提供对交互式表单(如文本框、复选框和单选按钮)的全面支持,并允许您用数据预填充表单。
    • IronPDF 还允许从现有 PDF 中提取表单数据,使得以编程方式读取和处理表单数据变得容易。
  7. 页面操作

    • IronPDF 提供多种方法来处理PDF文档中的单个页面,例如旋转页面、删除页面或重新排列页面。 这有助于定制最终文档的结构。
    • 您还可以向现有的PDF添加新页面,或删除不需要的页面。
  8. 安全性和加密

    • IronPDF 允许您对PDF应用密码保护和加密,确保您的文档安全。 您可以设置用户权限,例如防止打印、复制或编辑PDF。
    • 数字签名也可以添加到PDF中以验证真实性,为敏感文件提供一层安全保护。
  9. 水印和品牌化

    • 使用IronPDF为PDF文档添加水印非常简单。 您可以将文本或图像作为水印叠加在页面上,以防止未经授权的复制或分发您的文档。
    • 此功能常用于品牌推广,需要在文档的所有页面上始终显示徽标或文本。
    1. 文本和图像提取

      • IronPDF 允许从 PDF 文档中提取文本和图像,开发人员可以提取数据用于处理或重用。
    • 这对于需要分析PDF内容、从表单中提取信息或检索图像以供进一步使用的场景非常有帮助。
    1. Unicode 和多语言支持

      • IronPDF具有强大的Unicode支持,这意味着它可以处理国际字符和字体,使其非常适合生成多语言的PDF。
    • 它支持中文、阿拉伯语、俄语等语言,可以创建多语言PDF文档。
    1. 优化性能
    • IronPDF 经优化以提高性能,能够处理大型 PDF 文档和大量请求。 该库确保即使在处理大型数据集或图像时,PDF生成仍然快速高效。
    1. API 和开发者友好工具

      • IronPDF 提供了一个全面且易于使用的 API。 开发者可以通过使用简单的方法调用来快速启动以执行复杂任务。
    • API 文档详实,使得将 IronPDF 集成到任何 C# 或 .NET 应用程序中变得简单。
    1. 跨平台支持
    • IronPDF 是跨平台兼容的,这意味着它可以在 Windows 和 Linux 环境中使用,允许您在不同的操作系统上生成和操作 PDF。

步骤 1:创建一个新的 Visual Studio 项目

现在让我们开始创建一个新项目,打开 Visual Studio 并按照下图创建一个新项目。

C# 创建 PDF - 使用 IronPDF 的完整指南:图 1

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

选择创建控制台应用程序。

C# 创建 PDF —— 使用 IronPDF 的完整指南:图 2

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

提供项目名称和地点。

C# 创建 PDF - 使用 IronPDF 的完整指南:图 3

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

选择 .NET 版本

C# 创建 PDF - 使用 IronPDF 的完整指南:图 4

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

创建一个新项目。

步骤 2:从 NuGet 包管理器添加 IronPDF 库

在 Visual Studio 控制台应用程序中使用 NuGet 包管理器,您可以使用以下命令添加 IronPDF NuGet 库。

Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
$vbLabelText   $csharpLabel

此外,可以使用 Visual Studio 包管理器安装 IronPDF

C# 创建 PDF - 使用 IronPDF 的完整指南:图 5

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

步骤 3:创建一个简单的 PDF 文件。

使用IronPDF库轻松生成PDF文档。 现在让我们从一个简单的空白PDF文件开始。

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";
        PdfDocument pdf = new PdfDocument(270, 270);
        pdf.SaveAs("simple.pdf"); // Generate pdf file
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";
        PdfDocument pdf = new PdfDocument(270, 270);
        pdf.SaveAs("simple.pdf"); // Generate pdf file
    }
}
Friend Class Program
	Shared Sub Main()
		IronPdf.License.LicenseKey = "your key"
		Dim pdf As New PdfDocument(270, 270)
		pdf.SaveAs("simple.pdf") ' Generate pdf file
	End Sub
End Class
$vbLabelText   $csharpLabel

代码说明

该程序演示如何使用IronPDF库在C#中创建PDF文档。 以下是代码中的执行过程:

  1. 许可证密钥设置:程序首先为IronPDF库设置许可证密钥。 这是使用该库全部功能所必需的,因为许可证密钥确保您可以访问完整功能(而不是仅限于试用版本)。

  2. 创建 PDF 文档:程序随后创建一个新的PDF 文档,尺寸为270x270 点。 点是在印刷中用于测量的单位,等于1/72英寸。 因此,这将创建一个大约3.75 英寸乘 3.75 英寸的方形文档。

  3. 保存PDF:创建空白文档后,程序将PDF保存为“simple.pdf”的文件名。 由于文档中没有添加任何内容,输出将是一个完全空白(黑色)的PDF。

步骤 4:修改 PDF 文件

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";
        var pdf = new PdfDocument("simple.pdf");
        var renderer = new ChromePdfRenderer();
        var pagePdf = renderer.RenderHtmlAsPdf("<h1>Awesome IronPDF Library</h1>");
        pdf.PrependPdf(pagePdf);
        pdf.SaveAs("simple_WithTitle.pdf");
     }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";
        var pdf = new PdfDocument("simple.pdf");
        var renderer = new ChromePdfRenderer();
        var pagePdf = renderer.RenderHtmlAsPdf("<h1>Awesome IronPDF Library</h1>");
        pdf.PrependPdf(pagePdf);
        pdf.SaveAs("simple_WithTitle.pdf");
     }
}
Friend Class Program
	Shared Sub Main()
		IronPdf.License.LicenseKey = "your key"
		Dim pdf = New PdfDocument("simple.pdf")
		Dim renderer = New ChromePdfRenderer()
		Dim pagePdf = renderer.RenderHtmlAsPdf("<h1>Awesome IronPDF Library</h1>")
		pdf.PrependPdf(pagePdf)
		pdf.SaveAs("simple_WithTitle.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

代码解释

  1. 许可证密钥设置

    • 程序首先通过设置IronPDF license key来启动。 此步骤确保库完全无限制地运行。 您需要将“your key”替换为您的实际许可证密钥。
  2. 加载现有PDF

    • 然后,程序将现有名为“simple.pdf”的PDF文件加载到一个新的PdfDocument对象中。 这是通过将文件名传递给PdfDocument构造函数来完成的。 这是将被添加新封面页的 PDF。
  3. 将HTML渲染为PDF

    • 创建了一个ChromePdfRenderer对象,用于将HTML内容渲染为PDF。 在这种情况下,HTML 内容是一个简单的

      标签,里面的文本是 "Awesome IronPDF Library"。

    • 此 HTML 使用 RenderHtmlAsPdf 方法转换为封面 PDF
  4. 添加封面页

    • PrependPdf 方法用于在现有 PDF 文档的开头插入封面 PDF(由 HTML 生成)。 这意味着封面页将作为最终文档的第一页出现。
  5. 保存修改后的PDF

    • 最后,程序将修改后的 PDF(带有新封面)保存为"simple_WithTitle.pdf"。 原始内容来自“simple.pdf”被保留,但现在以新添加的标题页开始。

输出 PDF

C# 创建 PDF - 使用 IronPDF 的完整指南:图 6

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

步骤 5:添加页眉和页脚

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your code";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1><h1>Report</h1><p>This is a sample report.</p></body></html>";
        string headerHtml = "<div style='text-align: right;'>Page {page} of {total-pages}</div>";
        string footerHtml = "<div style='text-align: center;'>Confidential</div>";
        // Convert the HTML content to a PDF document with headers and footers
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.AddHtmlHeadersAndFooters(new ChromePdfRenderOptions
        {
            HtmlHeader= new HtmlHeaderFooter() { HtmlFragment=headerHtml },
            HtmlFooter = new HtmlHeaderFooter() { HtmlFragment=footerHtml }
        });
        pdfDocument.SaveAs("report.pdf");
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your code";
        // Create a new HtmlToPdf object
        var Renderer = new ChromePdfRenderer();
        string htmlContent = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1><h1>Report</h1><p>This is a sample report.</p></body></html>";
        string headerHtml = "<div style='text-align: right;'>Page {page} of {total-pages}</div>";
        string footerHtml = "<div style='text-align: center;'>Confidential</div>";
        // Convert the HTML content to a PDF document with headers and footers
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.AddHtmlHeadersAndFooters(new ChromePdfRenderOptions
        {
            HtmlHeader= new HtmlHeaderFooter() { HtmlFragment=headerHtml },
            HtmlFooter = new HtmlHeaderFooter() { HtmlFragment=footerHtml }
        });
        pdfDocument.SaveAs("report.pdf");
    }
}
Friend Class Program
	Shared Sub Main()
		IronPdf.License.LicenseKey = "your code"
		' Create a new HtmlToPdf object
		Dim Renderer = New ChromePdfRenderer()
		Dim htmlContent As String = "<html><body><h1>IronPDF: An Awesome PDF Generation Library</h1><h1>Report</h1><p>This is a sample report.</p></body></html>"
		Dim headerHtml As String = "<div style='text-align: right;'>Page {page} of {total-pages}</div>"
		Dim footerHtml As String = "<div style='text-align: center;'>Confidential</div>"
		' Convert the HTML content to a PDF document with headers and footers
		Dim pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent)
		pdfDocument.AddHtmlHeadersAndFooters(New ChromePdfRenderOptions With {
			.HtmlHeader= New HtmlHeaderFooter() With {.HtmlFragment=headerHtml},
			.HtmlFooter = New HtmlHeaderFooter() With {.HtmlFragment=footerHtml}
		})
		pdfDocument.SaveAs("report.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

代码片段解释

  1. 许可证密钥设置

    • 通过设置您专属的IronPDF许可证密钥,IronPdf.License.LicenseKey可以启用该库的全部功能。
  2. 创建PDF渲染器

    • 创建了一个ChromePdfRenderer实例,它将用于将HTML内容渲染成PDF格式。 这是IronPDF渲染引擎的一部分。
  3. 定义 HTML 内容

    • 创建了一个简单的HTML字符串,其中包括一个标题(

      IronPDF: 一个很棒的PDF生成库),一个报告标题(

      报告),以及一个示例报告段落。

  4. 定义页眉和页脚的HTML

    • 指定自定义页眉和页脚的HTML字符串:

      • 页眉包括格式为“第 {page} 页,共 {total-pages} 页”的页码,右对齐。
      • 页脚包括居中对齐的“Confidential”文本。
  5. HTML 转 PDF 转换

    • 调用 RenderHtmlAsPdf() 方法将 HTML 内容转换为 PDF 文档。
  6. 添加页眉和页脚

    • 在 pdfDocument 对象上调用 AddHtmlHeadersAndFooters() 方法。 此方法将先前定义的页眉和页脚添加到生成的PDF中。 ChromePdfRenderOptions 用于传递页眉和页脚设置。
  7. 保存PDF

    • 最后,使用 SaveAs() 方法将生成的 PDF 保存到磁盘上的 "report.pdf" 文件中。

输出 PDF

C# 创建 PDF - 使用 IronPDF 的完整指南:图 7

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

第6步:包含外部样式表和脚本

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";        
        // Define the HTML content with links to external CSS and JS files
        string htmlContent = @"
            <html>
            <head>
                <link rel='stylesheet' type='text/css' href='styles.css'>
                <script src='script.js'></script>
            </head>
            <body>
                <h1>IronPDF: An Awesome PDF Generation Library</h1>
                <h1>Styled Content</h1>
                <p id='dynamic-text'>This content is styled using an external CSS file and JavaScript.</p>
            </body>
            </html>";
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("awesomeIronPDF_styled_content.pdf");
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";        
        // Define the HTML content with links to external CSS and JS files
        string htmlContent = @"
            <html>
            <head>
                <link rel='stylesheet' type='text/css' href='styles.css'>
                <script src='script.js'></script>
            </head>
            <body>
                <h1>IronPDF: An Awesome PDF Generation Library</h1>
                <h1>Styled Content</h1>
                <p id='dynamic-text'>This content is styled using an external CSS file and JavaScript.</p>
            </body>
            </html>";
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("awesomeIronPDF_styled_content.pdf");
    }
}
Friend Class Program
	Shared Sub Main()
		IronPdf.License.LicenseKey = "your key"
		' Define the HTML content with links to external CSS and JS files
		Dim htmlContent As String = "
            <html>
            <head>
                <link rel='stylesheet' type='text/css' href='styles.css'>
                <script src='script.js'></script>
            </head>
            <body>
                <h1>IronPDF: An Awesome PDF Generation Library</h1>
                <h1>Styled Content</h1>
                <p id='dynamic-text'>This content is styled using an external CSS file and JavaScript.</p>
            </body>
            </html>"
		Dim pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent)
		pdfDocument.SaveAs("awesomeIronPDF_styled_content.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

style.css

/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 20px;
}
h1 {
    color: #007BFF;
}
p {
    font-size: 14px;
    line-height: 1.6;
}
/* styles.css */
body {
    font-family: Arial, sans-serif;
    margin: 20px;
}
h1 {
    color: #007BFF;
}
p {
    font-size: 14px;
    line-height: 1.6;
}
' styles.css 
body
If True Then
	font-family: Arial, sans-serif
	margin:
	20px
End If
h1
If True Then
	color:
	#007BFF;
End If
p
If True Then
	font-size: 14px
	line-height: 1.6
End If
$vbLabelText   $csharpLabel

script.js

// script.js
document.addEventListener('DOMContentLoaded', function() {
    var dynamicText = document.getElementById('dynamic-text');
    dynamicText.textContent = "This content has been modified by JavaScript.";
});
// script.js
document.addEventListener('DOMContentLoaded', function() {
    var dynamicText = document.getElementById('dynamic-text');
    dynamicText.textContent = "This content has been modified by JavaScript.";
});
' script.js
document.addEventListener( 'DOMContentLoaded', @function() { var dynamicText = document.getElementById('dynamic-text'); dynamicText.textContent = "This content has been modified by JavaScript."; });
$vbLabelText   $csharpLabel

代码解释

此代码演示了如何在 C# 中使用 IronPDF 从包含外部 CSS 和 JavaScript 文件链接的 HTML 内容生成 PDF。 它展示了如何创建包含样式内容和动态行为(通过JavaScript)的PDF。

  1. 许可证密钥设置

    • 将 IronPdf.License.LicenseKey 设置为您唯一的 IronPDF 许可证密钥,允许访问 IronPDF 库的全部功能。
  2. 定义具有外部资源的HTML内容:

    • HTML 字符串定义为:

      • 一个指向外部 CSS 文件(styles.css)的链接,用于样式化内容。

      • 一个链接到外部JavaScript文件 (script.js),可以为内容添加动态功能。
    • HTML 内容包括一个标题 (

      IronPDF:一个出色的 PDF 生成库)、一个副标题 (

      样式化内容),以及一个带有动态文本 ID 的段落 (

      ),该段落由外部 CSS 样式化,并可能被 JavaScript 修改。

  3. 将HTML渲染为PDF

    • 调用 Renderer.RenderHtmlAsPdf() 方法将 HTML 内容(包括链接的 CSS 和 JavaScript)转换为 PDF 文档。 请注意,IronPDF 可以处理可访问的外部资源,如 CSS 和 JavaScript,例如当文件在本地或远程托管时。
  4. 保存PDF

    • 生成的 PDF 文档使用 SaveAs() 方法保存为名为 "awesomeIronPDF_styled_content.pdf" 的文件。

笔记

  • 外部 CSS 和 JS 文件:为了确保链接正常工作,styles.css 和 script.js 文件应在代码运行的环境中可访问。 如果文件是本地的,请确保它们在正确的目录中,或者提供文件的完整路径。
  • PDF中的JavaScript:IronPDF可以渲染使用JavaScript实现页面行为的内容。 然而,需要注意的是,JavaScript 在静态 PDF 文件中可能无法如预期那样执行,因为 PDF 并不像网页那样具有动态性。 IronPDF 主要使用 JavaScript 在生成 PDF 之前呈现内容,因此在 PDF 创建后,通过 JavaScript 动态操作内容可能不起作用。

输出 PDF

C# 创建 PDF - 使用 IronPDF 的完整指南:图 8

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

步骤7:包含图像和位图。

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";  
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Import image file as byte
        byte[] base64Bytes = File.ReadAllBytes("image.jpg"); // Use your own here
        // Convert byte to base64
        string imgDataUri = @"data:image/png;base64," + Convert.ToBase64String(base64Bytes);
        string imgHtml = $"<img src='{imgDataUri}'>";
        PdfDocument pdf = renderer.RenderHtmlAsPdf(imgHtml);   // document object      
        pdf.SaveAs("embedded_sample.pdf");
    }
}
class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "your key";  
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        // Import image file as byte
        byte[] base64Bytes = File.ReadAllBytes("image.jpg"); // Use your own here
        // Convert byte to base64
        string imgDataUri = @"data:image/png;base64," + Convert.ToBase64String(base64Bytes);
        string imgHtml = $"<img src='{imgDataUri}'>";
        PdfDocument pdf = renderer.RenderHtmlAsPdf(imgHtml);   // document object      
        pdf.SaveAs("embedded_sample.pdf");
    }
}
Friend Class Program
	Shared Sub Main()
		IronPdf.License.LicenseKey = "your key"
		Dim renderer As New ChromePdfRenderer()
		' Import image file as byte
		Dim base64Bytes() As Byte = File.ReadAllBytes("image.jpg") ' Use your own here
		' Convert byte to base64
		Dim imgDataUri As String = "data:image/png;base64," & Convert.ToBase64String(base64Bytes)
		Dim imgHtml As String = $"<img src='{imgDataUri}'>"
		Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(imgHtml) ' document object
		pdf.SaveAs("embedded_sample.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

代码说明

这个C#程序演示了如何使用IronPDF通过将图像转换为Base64字符串然后嵌入到HTML内容中,从而将图像嵌入到PDF文档中。 以下是流程的分解:

  1. 许可证密钥设置

    • 程序首先设置IronPDF 许可证密钥,这是使用 IronPDF 完整功能而无限制所必需的。
  2. 图像导入和转换为Base64

    • 该程序将图像文件(在本例中是image.jpg)读取为字节数组。
    • 然后将这个字节数组转换为Base64 字符串。 Base64 字符串以适当的图像类型前缀(data:image/png;base64,),使其适合直接嵌入到 HTML 中。
  3. 在 HTML 中嵌入图片

    • Base64 字符串表示的图像然后嵌入在 HTML  related to 代码说明 标签中。 这个HTML字符串现在包含了可以在PDF中渲染的图像格式。
  4. 将HTML渲染为PDF

    • 该程序使用IronPDF's ChromePdfRenderer将 HTML(包含嵌入图像)呈现为PDF 文档
  5. 保存PDF

    • 最后,程序将生成的 PDF(现在已包含嵌入的图像)保存到一个名为“embedded_sample.pdf”的文件中。

输出 PDF

C# 创建 PDF - 使用 IronPDF 的完整指南:图 9

从Pixabay添加上传

或拖放图像到此处

添加图片替代文本

步骤 8:将 HTML 文件转换为 PDF。

using IronPdf;
    // Instantiate Renderer
    var renderer = new ChromePdfRenderer();
    // Create a PDF from an existing HTML file using C#
    var pdf = renderer.RenderHtmlFileAsPdf("sample.html");
    // Export to a file or Stream
    pdf.SaveAs("output.pdf");
using IronPdf;
    // Instantiate Renderer
    var renderer = new ChromePdfRenderer();
    // Create a PDF from an existing HTML file using C#
    var pdf = renderer.RenderHtmlFileAsPdf("sample.html");
    // Export to a file or Stream
    pdf.SaveAs("output.pdf");
Imports IronPdf
	' Instantiate Renderer
	Private renderer = New ChromePdfRenderer()
	' Create a PDF from an existing HTML file using C#
	Private pdf = renderer.RenderHtmlFileAsPdf("sample.html")
	' Export to a file or Stream
	pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

代码说明

此程序演示如何使用IronPDF库在C#中将现有的HTML文件转换为PDF文档。 以下是每个步骤的说明:

  1. 实例化渲染器

    • 第一步是创建ChromePdfRenderer的实例,该类负责将HTML内容渲染为PDF。 该渲染器使用Chromium,一个强大的浏览器引擎,以确保HTML到PDF的准确和高质量转换。
  2. 将HTML转换为PDF:

    • 然后,程序加载一个现有的 HTML 文件(在本例中为 sample.html),并使用 RenderHtmlFileAsPdf 方法将该 HTML 文件转换为 PDF 文档。 生成的PDF将保留HTML源代码的布局、样式和格式。
  3. 保存PDF

    • 在将 HTML 渲染为 PDF 之后,程序使用SaveAs方法将 PDF 文档保存为名为"output.pdf"的文件。 这使生成的PDF能够根据需要进行存储和使用。

步骤9:URL到PDF转换。

以下代码片段演示了如何使用IronPDF将URL转换为PDF。

using IronPdf;
    // Instantiate Renderer
    var renderer = new ChromePdfRenderer();
    // 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");
using IronPdf;
    // Instantiate Renderer
    var renderer = new ChromePdfRenderer();
    // 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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

代码解释

  1. 实例化渲染器

    • 第一步涉及创建一个ChromePdfRenderer的实例。 此渲染器负责将HTML内容转换为PDF。 它使用Chromium浏览器引擎来确保渲染的PDF紧密匹配页面在真实浏览器中的外观。
  2. 将网址或本地文件转换为PDF

    • 然后,程序使用RenderUrlAsPdf方法从指定URL(在本例中为https://ironpdf.com/)的内容创建PDF。 此方法获取给定URL的页面并将其呈现为PDF格式。
    • 如果您愿意,您还可以传递本地文件路径,而不是 URL,以从本地 HTML 文件渲染内容。
  3. 保存PDF

    • 一旦从URL或文件中获取的HTML内容被渲染为PDF,程序会使用SaveAs方法保存生成的PDF文档。 在此示例中,PDF 文件保存为文件名"url.pdf"

IronPDF的使用案例

IronPDF 是一个强大的库,用于在 C# 中处理 PDF。 它允许开发人员轻松生成、修改和操作PDF文档。 以下是在 C# 应用程序中 IronPDF 的一些常见使用案例

从HTML内容生成PDF报告

  • 用例:从动态或静态的HTML内容创建PDF报告,如发票、财务报表和产品目录。
  • 示例:一个生成每周销售报告并通过电子邮件将其作为PDF附件发送的业务应用程序。 该报告可以从数据库动态生成,然后使用HTML和CSS转换为格式化的PDF文档。

2. 将网页转换为PDF

  • 用例:将网页或URL转换为PDF文档。 这对于将文章、整个网站或特定网页保存为PDF非常有用。
  • 示例:一种工具,允许用户将任何网页转换为PDF,就像“另存为PDF”的浏览器扩展,或者用于保存基于网络的内容以供离线查看或打印。

3. 在PDF中嵌入图像、表格和图形

  • 用例:在PDF文件中嵌入图像、图表和复杂的表格,通常在生成发票、证书或营销材料等场景中需要使用。
  • 示例:一款公司应用程序,用于生成个性化发票,内嵌公司徽标、条形码以及所购产品的项目化表格。

4. 将 HTML 表单转换为 PDF

  • 用例:将HTML表单转换为可填写或不可填写的PDF表单,适用于用户需要以数字方式提交表单的情况。
  • 示例:一个表单管理应用程序,允许用户在线填写表单,然后将完整的表单下载或以 PDF 格式发送电子邮件。 表单数据嵌入到PDF中,便于访问和打印。

5. 编辑和修改现有的PDF

  • 用例:在现有 PDF 中添加、删除或修改元素,例如添加页眉、页脚、文本注释、图像或水印。
  • 示例:一个文档管理系统,您需要在所有PDF共享之前对其加水印,以确保它们不会未经授权而被打印或分发。

6. 将多个PDF合并为一个

  • 用例:将多个PDF合并为一个文件,例如合并多份发票或合并扫描文档。
  • 示例:法律公司使用的一种工具,用于将各种法律文件中的单独页面合并成一个连贯的PDF文件,以便于存储和检索。

7. 从PDF中提取文本和数据

  • 使用案例:从现有PDF文件中提取文本、表格和其他数据以进行分析或再处理。
  • 示例:一个OCR应用程序,从PDF格式的扫描表单或发票中提取数据以便进一步处理,例如将数据输入到数据库中。

8. 从模板创建PDF

  • 用例:使用预定义的模板(HTML、CSS 或现有 PDF)自动生成一致的品牌 PDF 文档。
  • 示例:一种基于预设计HTML模板生成可下载PDF证书的网络服务,包含诸如用户名、课程完成详情和日期等动态文本。

9. PDF文档的数字签名

  • 用例:为 PDF 添加数字签名,以实现安全和授权的文件签署。 这在法律、政府和商业流程中非常有帮助。
  • 示例:一种以电子方式签署合同或协议的解决方案。 签署的文件随后转换为安全的PDF文件,以确保真实性。

10. 自动化PDF文档生成

  • 使用案例:自动生成大量PDF文档,例如产品目录、月度报告或收据。
  • 示例:一个为客户生成和发送每月PDF发票的Web应用程序,或一个根据用户输入按需创建个性化文档(如提案或合同)的系统。

11. 创建交互式PDF

  • 用例:创建包含交互元素的PDF,例如按钮、超链接或表单字段,用户可以直接在PDF查看器中填写。
  • 示例:一种表单提交应用程序,用户可以在 PDF 文档中填写、签名并直接提交表单,而无需其他软件。

12. 将PDF转换为其他格式

  • 用例:将PDF转换为其他格式,如HTML、Word或图像(例如JPEG或PNG),以便进一步使用或操作。
  • 示例:一种将PDF转换为可编辑Word文档的文档转换工具,便于内容修改。

13. 拆分PDF文档

  • 用例:根据特定的页面范围或内容,将大型PDF拆分为更小、更易于管理的文件。
  • 示例:一个扫描应用程序,它会自动将扫描的文档(如合同或多页表格)拆分为每个单独页面或部分的独立PDF。

14. 为PDF设置密码保护

  • 用例:加密并设置密码保护PDF文件,以确保只有授权人员可以访问。
  • 示例:一个金融报告应用,生成 PDF 报表并使用密码保护它们,以确保内部的敏感数据不被未经授权的人员泄露。

许可信息(可用试用版)

IronPDF。 在使用IronPDF库之前放置。

IronPdf.License.LicenseKey = "your key";
IronPdf.License.LicenseKey = "your key";
IronPdf.License.LicenseKey = "your key"
$vbLabelText   $csharpLabel

结论

IronPDF .NET PDF库使C#中的PDF生成不仅简单,而且强大和多功能。无论您是在生成发票、报告还是其他任何类型的文档,IronPDF都提供了强大的功能,如HTML到PDF转换、自定义页眉和页脚、PDF编辑、表单处理等。 它提供了一种无缝的方式来处理PDF,而无需担心底层文档结构细节。

使用 IronPDF,您可以在 C# 中轻松创建高质量的 PDF,让您能够更多地专注于为用户提供出色的功能,而无需担心文档格式的复杂性。 无论您是处理动态网页内容还是创建静态报告,IronPDF都是满足您PDF需求的可靠解决方案。

下一步 >
HTML 转 PDF C# - 使用 IronPDF 的完整指南