SVG嵌入式图像仅在浏览器中显示

肌无精

我有使用Raphael.js以编程方式生成的SVG文件。Raphael输出使用PHP写入实际文件。SVG包含嵌入为Base64编码数据的图像。这些文件如下所示:

<svg height="644" version="1.1" width="740" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="overflow: hidden; position: relative; top: -0.583008px;" viewBox="0 0 740 644" preserveAspectRatio="xMidYMid meet">
<image x="185" y="161" width="370" height="370" preserveAspectRatio="none" xlink:href="data: image/png;base64,iVBORw [-- lots of Base64-Data --] ==" transform="matrix(1.3696,-0.3064,0.3064,1.3696,-391.7711,-44.4982)" style="" stroke-width="0.7125311771299471"></image>
<desc>Created with Raphaël 2.2.0</desc>
<defs></defs>
</svg>

这是一个示例文件:http : //www.mybinaryromance.com/files/0.218636001483456524.svg

图像可以在浏览器中正确显示(在Ubuntu上经过Firefox和Chromium测试),但是在其他应用程序(Ubuntu图像查看器,GIMP,TCPDF ...)中,SVG显示为空。为什么会这样呢?

保罗·勒博

请尝试在之后删除空格data:URI语法规范特别禁止在URI中使用空格。请参阅https://tools.ietf.org/html/rfc2396的2.4.3节

可能是浏览器比较宽松,但其他程序却没有。

如果这没有任何改变,则可能是那些程序不支持SVG中<image>Data URI

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我们如何在浏览器中缓存嵌入式SVG?

嵌入式浏览器中对Google的OAuth请求

在浏览器中以猫鼬显示嵌入式文档数据模型

带有嵌入式脚本的SVG,可扩展到浏览器的可用空间

哪个嵌入式浏览器显示广告网站?

跨浏览器嵌入式视频灰度滤镜

如何从嵌入式pdf与浏览器进行通信

JSF创建嵌套的嵌入式浏览器

在Excel Javascript API中创建嵌入式Web浏览器或iframe

如何在Google Chrome浏览器的嵌入式Javascript中设置断点?

在嵌入式Vue应用中操纵浏览器网址

浏览器何时在嵌入式元素中呈现空格?

为什么嵌入式YouTube视频在Google Chrome浏览器中停止运行?

我想在React中的网页中使用嵌入式浏览器

iPhone浏览器中的嵌入式Twitter时间轴溢出问题

Exponare 5.6缩放和平移在嵌入式浏览器中不再起作用

SVG 图像在浏览器中的显示方式不同

如何在移动浏览器的嵌入式Vimeo播放器上显示全屏按钮?

图像翻转-仅在浏览器中

如何允许在嵌入式 SVG 中引用外部图像?

iOS 9.x中嵌入式Facebook浏览器中的视口/页面高度错误

如何通过 javascript 在 c# 中首次播放嵌入式 YouTube(使用 Gecko 浏览器)?

使用Windows 10的Visual Studio中的嵌入式Web浏览器控件将发生什么

SVG未显示在浏览器中

在angular2中显示嵌入式图像

SVG 图像标签中的图像显示在桌面浏览器中,而不是 iphone

如何设置Silverlight浏览器应用程序与嵌入式Web浏览器控件之间的通信

在浏览器中显示图像

启动嵌入式 Tomcat 并从命令行打开浏览器