此SVG无效。在打开之前验证它

时间:2015-02-10 22:50:56

标签: svg adobe-illustrator

我刚刚修改了我的Wordpress模板附带的svg文件,但我想到了这一点:错误行787,第77列:没有属性" sketch:type"

<g id="city-copy" transform="translate(1305.000000, 47.000000)" sketch:type="MSShapeGroup">

11 个答案:

答案 0 :(得分:3)

在文本编辑器中打开svg,并从sketch:type="MSShapeGroup"元素中删除<g>属性。更好的策略是使用svgo等工具优化您的svg。

答案 1 :(得分:3)

这可能是由多种原因引起的,但是我已经能够通过以下方式解决此问题:

  1. Inkscape中打开SVG
  2. 转到文件>清理文档
  3. 保存SVG(选择唯一的文件名,以免丢失以前的工作)。

答案 2 :(得分:2)

家伙!我在另一个论坛上看到了这个提示,并且它有效。我设法修复损坏的文件。你要做的是:

  • 在文本编辑器中打开文件(我使用的是Dreawweaver)
  • 检查第一行是否有以下条目:xmlns:x =&#34;&amp; ns_extend;&#34;的xmlns:I =&#34;&安培; ns_ai;&#34; xmlns:graph =&#34;&amp; ns_graphs;&#34;,并删除&#39;&amp;&#39;字符所以它读取:xmlns:x =&#34; ns_extend;&#34;的xmlns:I =&#34; ns_ai;&#34;的xmlns:图表=&#34; ns_graphs;&#34;
  • 保存文件,Illustrator将打开它。
祝你好运!

答案 3 :(得分:1)

非常感谢方法原则。在我的情况下,使用这个想法(由于Adobe Illustrator不会打开文件,用文本编辑器打开损坏的SVG文件),我使用文本编辑器(Smultron)打开损坏的SVG文件和可打开的SVG文件。我比较了两个文件的上部区域;看到损坏的SVG文件中缺少某些代码行;从可打开(工作)的SVG复制了那几行额外的代码;并保存。然后AI可以打开以前损坏的SVG文件。我将我需要的图层复制到一个新的AI文件中,并放弃了以前损坏的SVG。

答案 4 :(得分:0)

检查编码值。
我将encoding="windows-1252"更改为encoding="utf-8"并为我工作。

答案 5 :(得分:0)

AI版本CS7正在保存无效的SVG和SVGZ文件。就我而言,SVG文件中缺少两个名称空间。

使用“导出到SVG”代替。无需名称空间即可保存SVG。

答案 6 :(得分:0)

我在Adobe Illustrator中保存的svg文件也有类似的问题。对我来说,最简单的解决方法是在Inkscape中打开文件并保存副本,这些文件就可以了。

原始错误消息为“ SVG文件无效。请在打开前对其进行验证。”具有讽刺意味的是,使用新名称保存副本后,原始文件现在将在Illustrator中打开。

答案 7 :(得分:0)

作为一个完全非技术人员,我按照上面的建议进行操作,并在文本编辑器中打开了SVG。上面的问题都不在我的文件中,因此我将该文件与可以正常工作的SVG文件进行了比较,尝试了几件事,发现 “ 0 0不重复 标记之外代码的最后是罪魁祸首!删除了,瞧! :-)

答案 8 :(得分:-1)

在代码/文本编辑器中打开svg后,在我的Visual Studio Code中,我注意到我的<DIV id="container">数据周围有</DIV><svg..... >

删除此div标签解决了我的问题。

答案 9 :(得分:-1)

我偶然发现了另一个简单的修复方法:我要在文本编辑器中打开SVG,当时我发现OSX将SVG默认设置为ImageOptim,这是我用于剥离元数据的应用程序,等等。我让它有了文件,不久之后,我有了一个有效的SVG文件,该文件占用了磁盘上68%的空间。

答案 10 :(得分:-1)

我有一个类似的问题,上述任何解决方案都无法解决。最后,我通过在创建SVG文件时取消选中“导出RDF元数据”框(在本例中为QGIS)来解决该问题。

RDF元数据中的某些内容很可能对于Illustrator来说是不可读的,但是我没有设法弄清楚到底是哪一部分。