【问题标题】:converted SVG is not displaying in android canvas转换后的 SVG 未显示在 android 画布中
【发布时间】:2013-03-22 09:27:31
【问题描述】:

我有 eps 图像文件。我已经通过在线转换器 nut 转换为 .svg,现在这个转换后的 svg 没有显示在屏幕上。 (代码适用于其他原始 svg 图像)。

有没有像我们不能在 android 应用程序中使用转换后的 svg 图像的东西?

这是我的代码:

    public void onCreate(Bundle savedInstanceState) 
    { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    view = new GestureImageView(this);       
    svgImg=sVGParser.getSVGFromResource(getResources(),R.raw.american); 
    view.setImageDrawable(svgImg.createPictureDrawable()); 
    view.setLayoutParams(params); 
    view.setMaxScale(15f); 
    ViewGroup layout = (ViewGroup) findViewById(R.id.layout); 
    layout.addView(view); 
    } 

【问题讨论】:

  • 目前Android不支持SVG光栅化,拜托!检查this
  • 感谢您的回复。 :) 如果我没有错,那么光栅 svg 图像意味着将 svg 图像(矢量格式图像)转换为无矢量格式,如 png、jpeg,但我没有这样做。我只是通过在线转换器(不在代码中)将“.eps”图像转换为“.svg”所以在我的代码中,如果正常的 .svg 图像正在显示,那么转换后的图像也应该显示。但事实并非如此。我这样做的方式有可能吗?
  • 你能把代码片段贴在你卡住的地方吗?我想知道问题出在您的android代码还是转换后的图像上?
  • public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);设置内容视图(R.layout.main); view = new GestureImageView(this); svgImg=sVGParser.getSVGFromResource(getResources(),R.raw.american); view.setImageDrawable(svgImg.createPictureDrawable()); view.setLayoutParams(params); view.setMaxScale(15f); ViewGroup 布局 = (ViewGroup) findViewById(R.id.layout);布局.addView(视图);实际上代码太大了,因为我添加了放大和 ut 逻辑。
  • 请不要将代码粘贴到 cmets 中!

标签: android canvas svg converter eps


【解决方案1】:

问题很可能出在您使用的在线转换器生成的 SVG 上。

看起来好像您正在使用 svg-android。使用支持更多 SVG 规范的 AndroidSVG 可能会更成功。

【讨论】:

    【解决方案2】:

    我个人建议你不要使用 SVG,因为 Android 不支持 SVG 光栅化,你可能想阅读更多讨论 here

    但如果您真的坚持使用 svg,那么这里有一些有用的解决方案可能会对您有所帮助。

    Scaling SVGs in Android

    Is there any lite SVG viewer for Android

    svg image files android

    这里有一些在 android 中显示 SVG 的漂亮教程

    Android ImageView and Drawable with SVG Support

    Android. ImageView with SVG Support

    我本可以为此创建一个示例代码,但我现在在 Xcode 中。

    【讨论】:

      猜你喜欢
      • 2016-02-25
      • 1970-01-01
      • 1970-01-01
      • 2015-06-20
      • 2017-05-28
      • 1970-01-01
      • 1970-01-01
      • 2018-09-14
      • 1970-01-01
      相关资源
      最近更新 更多