使用SVG绘制而不是使用库绘制Canvas

时间:2018-05-02 14:17:40

标签: android svg canvas

我一直在寻找任何用于绘制SVG而不是Canvas的库。我找到了Vectoroid(https://github.com/sentinelweb/vectoroid),它提供了SVG绘图,但是在为绘图空间调用View时它包含一个错误,因此库不可用。正如我在Android开发文档中所读到的那样,Android Studio仅提供SVG渲染而不是绘图。 所以我想知道是否有任何库提供使用SVG而不是Canvas的绘图?或者Android Studio是否仅使用Canvas提供草图/绘图?

用于SVG绘图而不是Canvas是使用SVG与另一个Web应用程序连接到协作草图。

2 个答案:

答案 0 :(得分:0)

Android Studio不提供任何绘图功能。它是一个IDE,基本上是一个非常精美的文本编辑器。

Android平台只能通过Canvas绘制。通过将这些命令转换为Canvas命令,还需要实现其他任何功能。你可以这样做,但可能很复杂。

答案 1 :(得分:0)

  

用于SVG绘图而不是Canvas是与另一个连接   使用SVG进行协作草图的Web应用程序。

Kanji StrokeView听起来很适合你。也在github

设置

首先,在存储库末尾的jitpack中添加build.gradle

repositories {
   // ...
   maven { url "https://jitpack.io" }
}

然后,添加库依赖项:

implementation 'com.github.badoualy:kanji-strokeview:1.0.0'

用法

您可以将尺寸更改为您想要的尺寸,它应该可以平滑地缩放。

然后在您的代码中,您可以使用以下方法:

  • setPathData设置来自另一个 KanjiStrokeView
  • 的视图
  • loadPathData加载路径数据字符串列表,如:

    listOf(" M34.25,16.25c1,1,1.48,2.38,1.5,4c0.38,33.62,2.38,59.38-11,73.25&#34)

  • loadSvg加载SVG输入(string/inputstream/file)。