
如何在.NET中将PDF转换为Tiff文件
在现代企业中,数字文档是分享信息和视觉展示的典型场所。 然而,有时在单个页面内的信息会变得杂乱,导致信息过载,很难理解哪些内容与主题相关。 因此,常见的策略是结构化页面分隔,允许演示者清晰地传达信息,读者也能看到文档中清晰定义的部分。
虽然页面分隔在文档中很常见,但手动调整它们很麻烦且不可扩展。 在创建成千上万文档的公司中,自动添加页面分隔要高效得多,也更理想。 这允许开发人员自定义并应用格式以选择他们选择的文档。
在本文中,我们将讨论使用名为IronPDF的C# PDF库添加页面分隔。 IronPDF的直观性允许开发人员快速地在多种形式的内容上设置页面分隔。 我们还将讨论使用该库及其定制性和灵活性来创建具有页面分隔的视觉吸引力文档。
IronPDF:C# PDF库

IronPDF是一个灵活、易于使用、高度可定制的C# PDF库,允许开发人员、初学者或老手完全操控和编辑PDF。 它为开发人员提供了多种将不同格式(如HTML、RTF和图片)转换为PDF的方法,并进一步编辑在转换为PDF时的渲染方式。 此外,IronPDF利用了Chrome渲染引擎,因此在渲染HTML字符串方面非常擅长,并允许开发人员进一步使用CSS样式自定义HTML文档,在定制性和视觉呈现方面给开发人员带来无与伦比的优势。
由于该库使用Chrome渲染引擎,在渲染HTML时呈现所见即所得,这使其非常适合进行页面分隔模板的创建操作,从而确保与模板无区别。 这正是您在将模板转换为 PDF 时设计的方式。
在PDF中添加页面分隔
为了说明该库的灵活性和易用性,我们将使用一个代码示例展示如何通过编程方式添加页面分隔。
在此场景中,我们将使用基于表格的PDF作为输入,并观察立即添加页面分隔和之后添加在视觉上的区别。
许可证密钥
在开始之前,请记住IronPDF需要许可密钥才能操作。 您可以访问此链接,作为免费试用的一部分获得密钥。
// Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";' Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"收到试用密钥后,将其设置在项目中即可。
输入PDF
以下PDF将作为我们示例的输入。 这是一个简单的表格,其中数据与独立信息杂乱聚集,使很难区分内容的结尾。

代码示例用法
using IronPdf; // Import the IronPdf library
// Define the HTML content, including a table and an image
const string html = @"
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML content into a PDF
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf");Imports IronPdf ' Import the IronPdf library
' Define the HTML content, including a table and an image
Private Const html As String = "
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Create an instance of ChromePdfRenderer
Private renderer = New ChromePdfRenderer()
' Render the HTML content into a PDF
Private pdf = renderer.RenderHtmlAsPdf(html)
' Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf")- 首先我们导入
IronPdf模块。 - 上面显示的HTML字符串表示要转换为PDF的内容。
<div style='page-break-after: always;'> </div>标签被包含以确保在表格后分页。 - 然后我们实例化PDF渲染器。
- 我们将HTML字符串传递给
RenderHtmlAsPdf方法。 - 最后,将文档保存为
Page_Break.pdf。
更常见的方法是利用CSS进行页面分隔,而不是使用HTML的内联样式。
输出PDF

如您所见,输出在表格之后立即引入了页面分隔。
使用CSS控制页面分隔
由于IronPDF可以通过CSS自定义,因为它使用Chrome渲染引擎,我们可以利用它并使用CSS为特定元素添加页面分隔,并在其中添加页面分隔,还可以指定哪个元素不应该在其内有页面分隔。
例如,虽然在上面的图像中,页面分隔发生在表格之后,但有时由于杂乱,它可能在表格内发生。
为避免这种情况,我们可以为节点使用特定的CSS样式,并指定我们不想在内添加页面分隔。
<div style='page-break-inside: avoid'>
<img src='no-break-me.png'>
</div>
添加page-break-inside: avoid可以防止元素内部分页。 但是,当进行此操作时,请确保将其应用于元素的父div节点。
类似的操作也可以用于您希望在元素上添加页面分隔样式。
<div style="page-break-inside: avoid;">
<img src="no-break-me.png">
</div>
既然我们可以使用HTML,我们可以通过JavaScript的document.getElementById选择元素ID来深入HTML节点树,从而进一步指定节点的元素,并确保每个节点是完全可定制的。
优化图像质量和文件大小
页面分隔设置也与图像质量密切相关。 您要确保页面分隔设置不会通过在下一页上缩小或缩放来影响图像质量。
因此,我们可以使用CSS确保在应用页面分隔时,模板中的图像质量的一致性。
<div class="no-break">
<img src="optimized-image.jpg" alt="Optimized Image" style="width:100%; height:auto;">
</div>
上面的CSS样式确保了在页面分隔操作后图像的一致性。 我们首先将宽度设置为页面的100%,高度可以自动缩放以保持纵横比。
此外,IronPDF在处理HTML时有额外的渲染选项,类似于用户的可下载打印PDF提示的打印设置。有关完整的属性列表,请参阅API文档。
使用JavaScript的对应版本
由于IronPDF拥有使用Chrome渲染引擎的优势,它还提供了Node.js版本,允许来自不同背景的开发人员使用这个强大的库。
使用Node.js版本,开发者可以对添加分页进行更细致的控制,因为您可以访问基于promise的用法和方法,如onRejectedpromise方法用于调试或进度跟踪以及其中间功能。
相比于像html2pdf这样常见的库及其jsPDF对象的输出方法,IronPDF更灵活且支持多种语言,使得具有不同语言专业知识的开发人员能够合作同一项目。
结论
理解如何使用页面分隔以及CSS如何影响整体HTML是为用户创建有表现力且视觉吸引力的文档的关键。 它允许读者将他们正在阅读的信息进行分隔,以避免信息过载和混淆。 在整篇文章中,我们讨论了利用IronPDF使用的强大Chrome渲染引擎来为模板和自动化自动创建页面分隔模板,从而在创建这些文档时提高效率和可扩展性以及减少人为错误的风险。
对于想要试用IronPDF的开发者,该库提供免费试用用于$999及更高级别。

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


