我试图在Hype-Processing中加载SVG。你可以通过陈述:
来做到这一点HShape d = new HShape("ruby.svg");
最初它适用于我从在线获得的SVG。但是,当我在Illustrator中对对象进行分组并对某些路径进行分组,并尝试再次加载svg时,它会失败。错误在下面的要点中。
Could not parse -1 for --display
Ignoring <style> tag.
parsed: M,161.1,29.8,c,0,-.1,...,0
unparsed: .1.4,11.53,11.53,0,0,0,1.9,4.2,8.8,8.8,0,0,1,.6,1,15.61,15.61,0,0,0,2.6,3.9,1,...,29.8,Z
HYPE.pde:1:0:1:0: RuntimeException: shape command not handled: .1.4
Finished.
Could not run the sketch (Target VM failed to initialize).
我假设错误的原因,是我正在使用的插图画家的Creative Cloud版本。这可能是分组路径的问题,也可能是问题。
有没有其他人有这个错误,如果是这样你会如何解决?我正在考虑尝试改变SVG代码本身。 如果没有,那么确保插图画家保持向后兼容状态?
注意:我主要想分组路径,以便某些对象基于对称性是相同的颜色。颜色是随机确定的。
答案 0 :(得分:4)
使用Illustrator保存SVG时,它会添加<style>
标记,以便重用类。但是,Processing不会支持此标记,并会发出警告:"ignoring style tag"
。这有效地从草图中删除了所有颜色,从而使形状显示为黑色。最简单的解决方法是使用&#34; in-line&#34;从Illustrator保存SVG时的样式,以便Processing可以访问该信息。要做到这一点1)选择&#34;更多选项&#34;在SVG选项对话框中,然后2)选择&#34;样式属性&#34;在drop CSS Properties下拉列表中。
您可以在文本编辑器中打开SVG以确认形状看起来像这样(其中style
是形状的属性):
<polygon style="fill:#87CFC8;" points="18.3,15.2 37.4,4.1 56.6,15.2 37.4,26.2 "/>
以下是Illustrator中的设置:
答案 1 :(得分:0)
找到解决方案:
导出时看似插图画家保存SVG的方式与仅使用SAVE时略有不同。使用导出会产生上述问题,因此无法将SVG加载到Hype中。但保存它,似乎没有问题!
答案 2 :(得分:0)
我刚才遇到了这个问题。我改变了三件事,现在再次起作用了:
希望这有帮助!