使用ITextSharp将HTML文件转换为PDF文件

7

我希望能够实现以下功能:

给定一个HTML文件的路径名和一个PDF文件的期望路径名,使用ITextSharp将HTML文件转换为PDF。我看过很多代码示例,它们都差不多,但并不完全符合我的要求。我相信我的解决方案需要使用iTextSharp.text.html.simpleparser.HTMLWorker.ParseToList()函数,但我在尝试使用实际的HTML文件并输出实际的PDF文件时遇到了问题。

public void GeneratePDF(string htmlFileName, string outputPDFFileName)
{...}

我希望这个函数能够正常工作。

提前感谢。

编辑: 这是我尝试过的一个例子:

iTextSharp.text.Document doc = new Document();
        PdfWriter.GetInstance(doc, new FileStream(Path.GetFullPath("fromHTML.pdf"), FileMode.Create));

        doc.Open();

        try
        {
            List<IElement> list = iTextSharp.text.html.simpleparser.HTMLWorker.ParseToList(new StringReader(File.ReadAllText(this.textBox1.Text)), null);
            foreach (IElement elm in list)
            {
                doc.Add(elm);
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

        doc.Close();

请注意,textBox1.Text 包含我要转换为 PDF 的 HTML 文件的完整路径名,我希望将其输出到 "fromHTML.pdf"。
谢谢!

你能否贴出你的尝试中的一些代码? - Simon
3
重复重复重复的问题是指在stackoverflow.com搜索“itextsharp转换HTML”时出现的。 - Mark Storer
1个回答

1

我有同样的需求,通过谷歌被引导到这个页面,但是没有找到一个确切的答案。 但是经过一些尝试和摸索,我已经成功地使用iTextSharp库5.1.1将HTML代码转换为PDF。 我在这里分享的代码还处理了HTML中相对路径的img标签。如果您的img标签没有绝对src,iTextSharp库会抛出错误。 您可以在这里找到代码: http://am22tech.com/s/22/Blogs/post/2011/09/28/HTML-To-PDF-using-iTextSharp.aspx

如果您需要更多信息,请告诉我。代码是用c#编写的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接