Closed hubStarzy closed 2 years ago
Office是到2016版本才支持SVG的,之前的版本需要将SVG转成VML才能正常显示,直接作为XML写入文档中从docx4j找到了一个例子: https://www.docx4java.org/forums/docx-java-f6/add-svg-to-document-t2927.html
@draco1023 感谢您回复,文档我先看看,现在我还处于只能通过poi的api来读写word文档,直接操作xml我还需要再了解一下,不过这份文档对我帮助很大。
尝试进行了支持,可以参考 feature-svg 分支(基于poi 5.x),不过对于同样的 svg 内容,直接渲染 svg 标签和使用 img 标签引用 svg 作为 src 的效果有些不一样,还不清楚原因是什么,有待进一步分析
感谢
已经找到了html中svg标签中无法正确渲染的问题:在于JSoup解析html的时候默认会将标签和属性转换为小写,导致Batik
无法正确解析svg,解决办法是自定义了一个dom构建器,对svg使用xml解析模式,对其它标签仍然使用默认的html解析模式。已发布 0.3.14
和 0.3.14-beta
版本,请更新。
好的,非常感谢!
大佬,请问后续会支持HTML中包含的SVG图片么? 看了一下poi-tl是支持SVG的代码如下