代码之家  ›  专栏  ›  技术社区  ›  Assaf Lavie

在flex 4中显示SVG

  •  7
  • Assaf Lavie  · 技术社区  · 14 年前

    在flex 4中,SVG似乎已经被“否决”了,取而代之的是Adobe的fxg。如果我有一堆要继续使用的SVG图形,我该怎么做呢?有可靠的东西可以把SVG转换成FXG吗?它们是否处于特征对等?有没有一个转换器不花我1500美元?

    3 回复  |  直到 13 年前
        1
  •  1
  •   alxzaur    13 年前

    墨水景观也 exports fxg 现在(见评论24和42),但是 some limitations .

    它使用简单的XSLT作为扩展,因此您可以用任何支持XML转换的语言编写简单的脚本,以从SVG生成fxg。

        2
  •  1
  •   Adovid    13 年前

    实际上,如果您在flex 4中编程,请查看spark path原语。对于路径数据,它使用与SVG路径语法相同的字符串。您只需要解析它,但是actionscript完全支持正则表达式,因此将SVG作为带有urlrequest的文本/xml文件加载并解析基元的路径数据不应该太难。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/primitives/Path.html

    路径对象只支持其整个路径上的转换,因此,如果要实时操作路径数据,则只需分析数据结构中的数据并转换为字符串进行显示。

    过去,如果你想用ActionScript 3.0图形库显示SVG路径,你必须在显示时用二次狂犬病近似立方体狂犬病,但Spark原语通过接受立方体形式的路径数据来消除这一点——尽管即使是Spark原语Tives,当他们画出自己时,看起来确实是非常接近的近似值。

        3
  •  1
  •   Adovid    13 年前

    取决于您要做多少工作来解释SVG数据。如果您想执行诸如实现样式、遮罩/剪切和模糊效果之类的操作,那么在带有路径和所有属性的flex 4中就有这个功能,但是从数据中实现它需要一些工作。

    大多数SVG图形元素(图形和文本)可以在Inkscape等程序中转换为路径数据。即便如此,actionscript也有绘制方法Geomitries,这很可能支持基本形状。

    另外,如果您还想使用元素组,或者您不能使用组,那么必须对元素组上的转换进行解析,如果您不操纵它们,它们就没有意义了。