1

我正在尝试将 HTML 页面转换为 PDF。我正在尝试使用 XMLWorker。我正在关注我在网上看到的各种示例。然而,出于某种原因,XMLWorkerHelper 对象似乎认为我的 PDFWriter 对象实际上是一个 IElementHandler 对象。因此,它不会编译。我不知道出了什么问题。有没有人经历过这个?如何让 XMLWorkerHelper 相信我的 PDFWriter 实际上是 PDFWriter?这是我的代码:

Imports System.IO
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports iTextSharp.tool.xml


    Dim bytes As Byte()

    Using ms = New MemoryStream
        Using doc = New Document
            Using writer = PdfWriter.GetInstance(doc, ms)

                doc.Open()

                Using msCSS As New MemoryStream(System.Text.Encoding.UTF8.GetBytes(CSSstr))
                    Using msHTML As New MemoryStream(System.Text.Encoding.UTF8.GetBytes(HTMLstr))

                       'This Doesn't Work...
                       iTextSharp.tool.xml.XMLWorkerHelper.GetInstance().ParseXHtml(writer, doc, msHTML, msCSS)

                    End Using
                End Using

                doc.Close()

            End Using
        End Using

        bytes = ms.ToArray

    End Using
4

1 回答 1

2

多亏了布鲁诺,我才能让它工作。正如布鲁诺所指出的,iTextSharp 和 XMLWorker 的版本号需要相同。如果 iTextSharp,我显然使用的是旧版本。我下载了最新版本,问题就消失了。

于 2015-05-20T14:04:33.663 回答