在过去的 3 天里,我一直在尝试让 itextsharp 将简单的 html 表转换为 pdf。我找到了一个使用 htmlworker 的解决方案,但我需要对 css 进行一些控制。然后我尝试实现 xmlworker 对象,这几乎就像我没有导入我想的东西,因为每当我到达这一行时:
worker.ParseXHtml(writer, document, New StringReader(htmlReport))
我收到以下错误:“'iTextSharp.text.Document' 类型的值无法转换为 'System.IO.Stream'。”
“'System.IO.StringReader' 类型的值无法转换为 'System.Text.Encoding'。”
我已经尝试了几个不同的示例,但我总是以这些错误告终……到目前为止我所拥有的不起作用的代码如下。任何关于为什么这些错误不断出现在我身上的信息将不胜感激:)
Dim htmlReport As String = output.ToString
'Convert to pdf
Dim document As New Document(iTextSharp.text.PageSize.A4.Rotate(), 1, 1, 0, 0)
Dim writer As PdfWriter = PdfWriter.GetInstance(Document, New FileStream(Request.PhysicalApplicationPath + "\Export\test.pdf", FileMode.Create))
document.Open()
Dim worker As XMLWorkerHelper = XMLWorkerHelper.GetInstance
worker.ParseXHtml(writer, document, New StringReader(htmlReport))