【问题标题】:XMLWorker doesn't see img (itextsharp)XMLWorker 看不到 img (itextsharp)
【发布时间】:2017-04-19 14:32:40
【问题描述】:

我使用 XMLWorker 将 HTML 解析为 PDF。而且我的图像有问题。当单词之间的标签路径中有空格或西里尔符号位于路径中时,来自 HTML 的图像不会添加到 PDF 中。为了解决空间问题,我使用了path.Replase(" ", "%20")path.Replase(" ", "+"),但它没有帮助。

我是否应该将 img 的路径转换为 ​​base64 并在使用 ImageProvider (AbstractImageProvider) 之后,如here

如果路径没有空格或西里尔符号,则 XMLWorker 解析 HMTL 是正确的。

<img src="D:\c#\PdfItextSharp\HTML_to_PDF_book\HTML_to_PDF_book\bin\Debug\Data\Resources\Documentation\IASO\Modules\LearningFrame\Images\32x32-tree_add_subitem.png" class="icon">

但如果路径中有符号,则图像不会添加到 pdf 中

<img src="D:\c#\PdfItextSharp\HTML to PDF book\HTML to PDF book\bin\Debug\Data\Resources\Documentation\IASO\Modules\LearningFrame\Images\32x32-tree_add_subitem.png" class="icon">

\\HI-PC\AllUsers\Выгрузка\DebugHtmlToPdf\User manual - Instructor\bin\Data\Data\Screenshots\0e39c7d5-4489-4d8b-ae84-ee85a2e225ee.jpg

我怎么能这样

谢谢。

【问题讨论】:

  • 你能提供一个sscce吗?
  • @mkl,我加了。
  • 但是那些不是URLs,那些是文件系统路径。根据 HTML 规范:“src 属性必须存在,并且必须包含一个有效的非空 URL,该 URL 可能被空格包围,引用非交互式、可选动画、既不是分页也不是脚本的图像资源。”
  • @mkl,你对我有什么建议?我应该在 c# 中使用什么来转换为“根据 HTML 规范”?
  • This msdn blog entry 可能会帮助你

标签: c# itext xmlworker


【解决方案1】:

为了解决这个问题,我使用了下一个代码。感谢mkl 的帮助。

var uri = new System.Uri(tmpPath);
var convertedURI = uri.AbsoluteUri;

【讨论】:

    猜你喜欢
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 2014-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多