iTextSharp - 将HTML写入pdf文档

时间:2014-11-04 14:57:58

标签: c# itextsharp

我已经尝试过最大的努力让这个工作,但网上关于iTextSharp的所有信息似乎都过时了。 (我使用的是5.5.3版本)

我有一个简单的字符串变量,其中包含我想要呈现为PDF的HTML。

有一些使用XMLWorker / XMLWorkerHelper的示例,但这些类似乎不再是iTextSharp的一部分。 HTMLWorker仍然可用,但是关于过时的呻吟声。 (而且也不起作用)

这是我到目前为止所做的:

public byte[] RenderPdf() 
{
   MemoryStream file = new MemoryStream();
   Document document = new Document(this.PageSize);
   PdfWriter writer = PdfWriter.GetInstance(document, file);

   string HTML = GetHTMLFromActionResult();

   document.Open();

   //Missing code here to inject HTML into document variable.

   document.Close();
   return file.ToArray();
}

额外信息:
这是在.Net Framework 4.5.2上运行的C#MVC5 Web应用程序

2 个答案:

答案 0 :(得分:1)

我在帖子中看到两个单独的问题:

(1)iTextSharp的XML Worker在哪里?

如果要使用XML Worker,则需要额外的DLL。我不确定你通常会在哪里获得iTextSharp,但是如果你去SourceForge,你可以清楚地看到两个项目:http://sourceforge.net/projects/itextsharp/files/

首先下载itextsharp以及xmlworker,并确保版本号对应。

(2)我在哪里可以找到XML Worker的文档?

我上次更新这些例子的时间早在上周末,所以说它们已经过时是不公平的。也许你没有搜索官方网站:http://itextpdf.com/sandbox/xmlworker

我最近在回答以下问题时添加了一些示例:

当然,这些示例是Java中的iText示例,但是如果您浏览示例,您将在StackOverflow上找到相应问题的链接,其中许多问题都与Java中的iTextSharp有关。将Java示例移植到C#非常容易。

答案 1 :(得分:-1)

您需要致电writer.close()

相关问题