如何将使用 XML 创建的 Excel 传递给 PDF MVC



我需要从用XML创建的Excel创建一个PDF。我的应用程序基于 MVC 4.0。搜索我找到了 ITextSharp,但我找不到代码或类似的东西的例子。

如何使用 ITextSharp 从 Excel 导出为 PDF?

首先,将程序与文件格式和 API 分开。Excel是一个桌面电子表格程序。XLS 和 XLSX 是用于存储电子表格信息的二进制文件格式。Open XML 是一个广泛的主题,但通常是指为最新版本的 Office 创建的压缩 XML 文件格式Microsoft或用于与这些文件交互的 .Net API。

如果要将Excel文档保存到PDF文件,则需要自动化Excel。

如果要将XLS/XLSX文件转换为PDF,则需要一个翻译层,而iTextSharp对XLS或XLSX文件格式的了解为零。XLS 规范是 1,185 页,XLSX 规范是 299 页加上通用 Open XML 概念的参考,PDF 1.7 规范(您可能应该获得 ISO 32000)是 1,310 页,所以我建议为此探索第 3 部分库(我也没有建议)。

但是,如果您以编程方式在 C# 中遍历结构化数据,我建议您在创建 XLSX 文件的同时创建 PDF。 iTextSharp有一个非常非常好的表格API,可以自动格式化列宽和高度,所以你不必担心(除非你想)。您真的应该能够使用iTextSharp创建PDF,其代码与XLSX代码相同,甚至可能更少。快速搜索iTextSharp table应该会为您提供许多选择。如果你的结构化数据是GridView或类似的东西,你甚至可以使用 ASP.Net 为你创建HTML,并让iTextSharp将其解析为PDF命令。

最新更新