.svg文件作为HTML中的对象未在Android WebVIew中显示

时间:2014-10-15 15:19:26

标签: android html svg android-webview embed

我的应用程序有一个能够加载.svg文件的WebView控件:当url是.svg文件时,它会被正确显示。

我修改了代码,不是直接加载.svg文件,所以我必须调用类似

的东西
webView.loadDataWithBaseURL(baseUrl,"<html><body><object data='cover.svg'></object></body></html>","text/html", "UTF-8","");
  • 上面提到的代码适用于图像,但不适用于svg文件。

  • 上面提到HTML参数字符串作为HTML代码的HTML文件在Firefox(在Linux下)及其svg对象中正确显示。

  • 该对象始终使用与WebView /浏览器兼容的文件加载。

  • 我希望我的代码能够处理可以放在对象中的各种WebView /浏览器兼容文件。

我的代码出了什么问题?

2 个答案:

答案 0 :(得分:2)

这适用于各种格式:

webView.loadDataWithBaseURL(baseUrl,"<html><body><object onload='event.target.style.minWidth=screen.width;event.target.style.minHeight=screen.height;' data='cover.svg'></object></body></html>","text/html", "UTF-8","");

答案 1 :(得分:0)

要使用object元素添加SVG,请编写标记,例如以下链接

http://alistapart.com/article/using-svg-for-flexible-scalable-and-fun-backgrounds-part-ii

  <object type="image/svg+xml" 
    width="100" height="100" style="float:right" 
    data="http://blog.codedread.com/clipart/apple.svgz">
  <span/></object>