我正在尝试将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
答案 0 :(得分:2)
感谢布鲁诺,我能够让它发挥作用。正如Bruno指出的那样,iTextSharp和XMLWorker的版本号必须相同。如果iTextSharp,我显然使用旧版本。我下载了最新版本,问题就消失了。