迁移指南
如何用 C# 从 DynamicPDF 迁移到 IronPDF
从动态 PDF迁移到 IronPDF:完整的 C# 迁移指南。
DynamicPDF 是一个历史悠久的 .NET PDF 库,以其全面的 PDF 生成、合并和操作功能集而著称。 然而,DynamicPDF 分散的产品模式(生成器、合并器、HTML 转换器和其他组件需要单独的 License)给开发团队带来了复杂性和成本方面的挑战。 本综合指南提供了从动态 PDF逐步迁移到IronPDF的路径--IronPDF 是一个一体化的 .NET PDF 库,它将生成、操作和 HTML 转换集成在一个包中,并采用基于 Chromium 的现代渲染技术。
为什么要从动态 PDF迁移到 IronPDF? DynamicPDF 的产品碎片化是迁移的主要驱动力。 了解许可模式对于评估当前实施的真实成本至关重要。 ### 产品碎片化问题 DynamicPDF 是作为具有单独许可证的独立产品出售的: 1.**DynamicPDF生成器**:从零开始创建 PDF 2.**DynamicPDF合并器**:合并、分割和处理现有 PDF(单独购买) 3.**DynamicPDF核心套件**:组合生成器和合并器 4.**DynamicPDF ReportWriter**:报告生成 5.**DynamicPDF HTML Converter**:HTML 到 PDF 的转换(单独的附加组件) 6.**DynamicPDF打印管理器**:以编程方式打印 PDF 完整的 PDF 解决方案需要 3-5 个动态 PDF单独许可证。 IronPdf 一揽子包含所有内容。 ### 架构比较 |方面|动态 PDF|IronPDF| |--------|------------|---------| |**产品模型**|零散(5 个以上产品)|一体化库| |**许可**|需要多个许可证|单一许可证| |**HTML 到 PDF**|单独购买附加组件|基于 Chromium 的内置| |**CSS支持**|有限(需要附加功能)|带有 Flexbox/Grid 的完整 CSS3| |**API 风格**|基于坐标的定位|HTML/CSS + 操作 API| |**学习曲线**|Steep(多个应用程序接口)|温和(网络技术)| |**现代.NET**|.NET Standard 2.0|.NET 6/7/8/9+ 原生语言| ### 主要迁移优势 1.**单一软件包**:一个 NuGet 包取代 3-5 个动态 PDF包 2.**现代渲染**:Chromium 引擎与传统呈现 3.**网络技术**:使用 HTML/CSS 代替基于坐标的定位 4.**更简单的 API**:代码更少、更易读、更易维护 5.**无附加购买**:包含 HTML、合并和安全功能 ## 迁移前准备 ### 前提条件 确保您的环境符合这些要求: - .NET Framework 4.6.2+ 或 .NET Core 3.1 / .NET 5-9 - Visual Studio 2019+ 或带有 C# 扩展的 VS Code - 访问 NuGet 包管理器 -IronPDF许可证密钥(可在[ironpdf.com](https://ironpdf.com/licensing/)免费试用) ### 审计动态 PDF的使用情况 在解决方案目录中运行这些命令,以识别所有动态 PDF引用: ```bash # Find all动态 PDFreferences grep -r "ceTe.DynamicPDF\|DynamicPDF" --include="*.cs" --include="*.csproj" . # Check NuGet packages dotnet list package | grep -i dynamic ``` 需要查找的常见软件包: -<代码>ceTe.DynamicPDF.CoreSuite.NET代码>ceTe.DynamicPDF.Generator.NETceTe.DynamicPDF.Merger.NETceTe.DynamicPDF.HtmlConverter.NET标签,<代码>文本区域表 2文档代码>ChromePdfRenderer文档PDF 文档页面` 带分页符|或多次渲染| |<代码>合并文档代码>PdfDocument.Merge()HtmlConverterChromePdfRenderer标签
,<代码>代码>,<代码>
代码>文本区域`, ``| |<代码>图片代码>` 标记| |<代码>表 2代码>`| |<代码>页面编号标签代码>文档+<代码>页面代码>ChromePdfRenderer标签,<代码>文本区域代码>`, `
`|使用 CSS 创建风格| |<代码>表 2代码>`|完整的 CSS 样式| |<代码>合并文档代码>PdfDocument.Merge()HtmlConverterChromePdfRendererdocument.Draw()pdf.SaveAs()/<代码>pdf.BinaryData代码>页面编号标签<代码>%%CP%%代码>HtmlConverter