使用 iTextSharp CSSResolver 的命名空间 类
Namespace for using iTextSharp CSSResolver classes
我正在使用 iTextSharp CSSResolver 类 在 vb.net
中使用外部 css
请告诉我使用 XMLWorkerFontProvider
、CssFilesImpl
、StyleAttrCSSResolver
类.
的命名空间
下面是我的代码:
Dim fontProvider As XMLWorkerFontProvider = New XMLWorkerFontProvider()
Dim cssFiles As CssFilesImpl = New CssFilesImpl(fontProvider)
cssFiles.Add(XMLWorkerHelper.GetInstance().GetDefaultCSS())
Dim cssRevolver As StyleAttrCSSResolver = New StyleAttrCSSResolver()
Dim htmlContext As HtmlPipelineContext = New HtmlPipelineContext()
htmlContext.SetTagFactory(Tags.GetHtmlTagProcessorFactory())
htmlContext.SetImageProvider(New MyImageProvider(imagePath))
Dim pipeline As IPipeline = New CssResolverPipeline(cssRevolver, New HtmlPipeline(htmlContext, New PdfWriterPipeline(Document, writer)))
Dim worker As XMLWorker = New XMLWorker(pipeline, True)
Dim p As XMLParser = New XMLParser(worker)
p.Parse(xmlString)
谢谢
拉梅什
Dim sw As New StringWriter()
将硬件调暗为新的 HtmlTextWriter(sw)
strMonthlyDataHtml = LoadReport("PDF")
ltrPDFReport.Text = strMonthlyDataHtml
ltrPDFReport.RenderControl(硬件)
Dim sr As New StringReader(sw.ToString())
将 pdfDoc 调暗为新文档(iTextSharp.text.PageSize.A4、10.0F、10.0F、100.0F、0.0F)
Dim memStream = New MemoryStream()
Dim writer = PdfWriter.GetInstance(pdfDoc, memStream)
writer.CloseStream = 假
pdfDoc.Open()
将 htmlContext 变暗为新的 HtmlPipelineContext(无)
htmlContext.SetTagFactory(Tags.GetHtmlTagProcessorFactory())
Dim cssResolver = XMLWorkerHelper.GetInstance().GetDefaultCssResolver(False)
cssResolver.AddCssFile(Server.MapPath("../Assets/css/Efficiency.css"), 真)
cssResolver.AddCssFile(Server.MapPath("/Assets/css/Efficiency.css"), 真)
Dim 管道 As IPipeline = New CssResolverPipeline(cssResolver, New
HtmlPipeline(htmlContext, New PdfWriterPipeline(pdfDoc, writer)))
Dim worker As XMLWorker = New XMLWorker(pipeline, True)
Dim p As New XMLParser(worker)
p.Parse(sr)
pdfDoc.Close()
看来你把两种不同的东西混在一起了。当我看到 iTextSharp.text.html.simpleparser
时,我假设您使用的是旧的 HTMLWorker
,一个已经停产的 class。
当我查看您的代码时,我发现您正在使用 XML Worker,它需要一个单独的 DLL(itextsharp.xmlworker.dll). The classes you use are in iTextSharp.tool.xml
, and have nothing to do with iTextSharp.text.html.simpleparser
. You can check this, by downloading the ZIP file 并查看 itextsharp-src-xmlworker.zip
中的源代码。
我正在使用 iTextSharp CSSResolver 类 在 vb.net
中使用外部 css请告诉我使用 XMLWorkerFontProvider
、CssFilesImpl
、StyleAttrCSSResolver
类.
下面是我的代码:
Dim fontProvider As XMLWorkerFontProvider = New XMLWorkerFontProvider()
Dim cssFiles As CssFilesImpl = New CssFilesImpl(fontProvider)
cssFiles.Add(XMLWorkerHelper.GetInstance().GetDefaultCSS())
Dim cssRevolver As StyleAttrCSSResolver = New StyleAttrCSSResolver()
Dim htmlContext As HtmlPipelineContext = New HtmlPipelineContext()
htmlContext.SetTagFactory(Tags.GetHtmlTagProcessorFactory())
htmlContext.SetImageProvider(New MyImageProvider(imagePath))
Dim pipeline As IPipeline = New CssResolverPipeline(cssRevolver, New HtmlPipeline(htmlContext, New PdfWriterPipeline(Document, writer)))
Dim worker As XMLWorker = New XMLWorker(pipeline, True)
Dim p As XMLParser = New XMLParser(worker)
p.Parse(xmlString)
谢谢 拉梅什
Dim sw As New StringWriter()
将硬件调暗为新的 HtmlTextWriter(sw)
strMonthlyDataHtml = LoadReport("PDF")
ltrPDFReport.Text = strMonthlyDataHtml
ltrPDFReport.RenderControl(硬件)
Dim sr As New StringReader(sw.ToString())
将 pdfDoc 调暗为新文档(iTextSharp.text.PageSize.A4、10.0F、10.0F、100.0F、0.0F)
Dim memStream = New MemoryStream()
Dim writer = PdfWriter.GetInstance(pdfDoc, memStream)
writer.CloseStream = 假
pdfDoc.Open()
将 htmlContext 变暗为新的 HtmlPipelineContext(无)
htmlContext.SetTagFactory(Tags.GetHtmlTagProcessorFactory())
Dim cssResolver = XMLWorkerHelper.GetInstance().GetDefaultCssResolver(False)
cssResolver.AddCssFile(Server.MapPath("../Assets/css/Efficiency.css"), 真)
cssResolver.AddCssFile(Server.MapPath("/Assets/css/Efficiency.css"), 真)
Dim 管道 As IPipeline = New CssResolverPipeline(cssResolver, New
HtmlPipeline(htmlContext, New PdfWriterPipeline(pdfDoc, writer)))
Dim worker As XMLWorker = New XMLWorker(pipeline, True)
Dim p As New XMLParser(worker)
p.Parse(sr)
pdfDoc.Close()
看来你把两种不同的东西混在一起了。当我看到 iTextSharp.text.html.simpleparser
时,我假设您使用的是旧的 HTMLWorker
,一个已经停产的 class。
当我查看您的代码时,我发现您正在使用 XML Worker,它需要一个单独的 DLL(itextsharp.xmlworker.dll). The classes you use are in iTextSharp.tool.xml
, and have nothing to do with iTextSharp.text.html.simpleparser
. You can check this, by downloading the ZIP file 并查看 itextsharp-src-xmlworker.zip
中的源代码。