gpt4 book ai didi

android - Android 中的 SVG 支持

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:38:29 24 4
gpt4 key购买 nike

我们将开发一个 android 应用程序来展示 autocad使用 ecma 脚本的 svg 格式的绘图文件。我们有在模拟器中测试应用程序并在 webview 中打开 svg 文件。我们的问题是 XML 标签中的 ecmascript 没有在 webview 中执行在安卓中。我们知道 android 仅从 3.0 开始支持 SVG。做它不支持 svg 中的 ecmascript?

提前致谢

        final String mimeType = "text/html"; 
final String encoding = "utf-8";
final String html = "<p><img height=\"600px\" width=\"600px \"src=\"file:///android_asset/drawing3.svg\" /></p>";


WebView wv = (WebView) findViewById(R.id.webview_component);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadDataWithBaseURL("fake://not/needed", html, mimeType, encoding, "");

拉加兹涩

最佳答案

Android(3.0 及更高版本)支持带有 ECMAScript 的 SVG。

问题是当 svg 添加到 <img> 时,svg 中的 ecmacript 没有执行。标签。我还在几个桌面浏览器中测试了它,当 svg 在 <img> 中时标记,其中任何一个都没有执行 ecmascript。

在html中添加svg有5种方式:

  1. 将其添加为带有 <img> 的图像标签
  2. 将其嵌入 <embed>标签
  3. 将其嵌入 <iframe>标记
  4. 将其嵌入 <object>标签
  5. 将 svg 代码直接嵌入到 html 中(使用 <svg> 标签)

仅当 svg 嵌入 <embed> 时才会执行 svg 中的 ecmascript , <iframe><object>标签。在<svg>中直接嵌入svg代码时标记,可能需要进行一些代码更改(例如将脚本移动到 html 中的其他位置),但它也应该可以工作。

关于android - Android 中的 SVG 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6677397/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com