2

我正在尝试使用 ASP.NET (C#) 将检索到的数据从 SQL 导出为 PDF。评论:

  1. 我没有使用网格视图。
  2. 我使用 HTML 表格和 asp 标签设计了页面的格式。
    • 用于格式化布局的 HTML 表和用于显示我从 SQL 中选择的数据的值的 asp 标签。

如何使用 ASP.NET 将 HTML 表格转换为 PDF?

谁能帮我?谢谢。

4

4 回答 4

5

您可以尝试使用 itextsharp (链接)

例子:

using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO;
using iTextSharp.text.html;

// step 1 -- get html content
string htmlContent = ... // you html code (for example table from your page)

Document document = new Document();

// step 2:
// we create a writer that listens to the document
// and directs a PDF-stream to a file
PdfWriter.GetInstance(document, new FileStream("c:\\Chap0101.pdf", FileMode.Create));

// step 3: we open the document
document.Open();

// step 4: we add a paragraph to the document
//document.Add(new Paragraph(htmlContent.ToString()));

System.Xml.XmlTextReader _xmlr = new System.Xml.XmlTextReader(new StringReader(htmlContent));

HtmlParser.Parse(document, _xmlr);

// step 5: we close the document
document.Close();
于 2013-11-09T23:21:14.907 回答
2

您可以使用 ExpertPdf ( www.html-to-pdf.net )。这是一个 html 到 pdf 的转换器,我最近一直在使用并取得了巨大的成功。

于 2014-11-19T09:10:50.110 回答
0

我使用wkhtmltopdf,一个可以从 ASP.NET 调用的命令行应用程序。

于 2013-11-11T13:28:38.220 回答
0

接受 HTML 样式内容的解决方案与接受真实世界 HTML 的解决方案之间存在区别。

接受 HTML 样式或 HTML 子集的解决方案相当小且自包含。但是,您必须完全控制要使用的 HTML,这样才能确保您的内容符合解决方案的功能,这一点很重要。iText XmlTextReader 就是一个例子。

其他解决方案基于真实世界的 HTML 和真实世界的浏览器技术,以提供适当的 HTML/CSS/SVG/ 等支持。我们的 ABCpdf .NET 产品就是一个例子——它包括一个 Gecko (FireFox) 风格的布局引擎和一个 Trident (IE-like) 引擎。

您更喜欢哪个在很大程度上取决于您对源内容的控制程度。

于 2013-11-11T13:24:43.263 回答