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

此SVG无效。在打开之前验证它,svg,adobe-illustrator,Svg,Adobe Illustrator,我刚刚修改了Wordpress模板附带的一个svg文件,但我发现:错误行787,第77列:没有属性“sketch:type” 在文本编辑器中打开svg,并从元素中删除sketch:type=“MSShapeGroup”属性。更好的方法是使用类似的工具优化svg。非常感谢指导原则。在我的情况下,使用这种想法(因为Adobe Illustrator不会打开文件,所以使用文本编辑器打开损坏的SVG文件),我使用文本编辑器(Smultron)打开损坏的SVG文件和可打开的SVG文件。我比较了两个文件的

我刚刚修改了Wordpress模板附带的一个svg文件,但我发现:错误行787,第77列:没有属性“sketch:type”



在文本编辑器中打开svg,并从
元素中删除
sketch:type=“MSShapeGroup”
属性。更好的方法是使用类似的工具优化svg。

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

伙计们!我在另一个论坛上看到了这条建议,它奏效了。我设法修复了损坏的文件。你要做的是:

  • 在文本编辑器中打开文件(我使用Dreawweaver)
  • 检查第一行的条目,如:xmlns:x=“&ns_extend;”xmlns:i=“&ns_ai;”xmlns:graph=“&ns_graphs;”,并删除“&”字符,使其显示为:xmlns:x=“ns_extend;”xmlns:i=“ns_ai;”xmlns:graph=“ns_graphs;”
  • 保存文件,Illustrator将打开它
祝你好运

检查编码值。

我将
encoding=“windows-1252”
更改为
encoding=“utf-8”
,为我工作。

在代码/文本编辑器中打开svg后,在我的Visual Studio代码中,我注意到我的数据周围有


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

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


改用导出到SVG。它不需要名称空间就可以保存SVG。

这可能是由多种原因造成的,但我能够通过以下方法解决这个问题:

  • 在中打开SVG
  • 转到文件>清理文档
  • 保存SVG(选择唯一的文件名,以免丢失以前的工作)

  • 我在Adobe Illustrator中保存的svg文件也有类似的问题。对我来说,最简单的修复方法是在Inkscape中打开文件并保存一份副本,这些文件都很好


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

    我偶然发现了另一个简单的修复方法:我正要在文本编辑器中打开SVG,这时我注意到OSX将SVG默认为,一个我用来剥离元数据等的应用程序。所以我让它拥有这个文件,过了一会儿,我得到了一个有效的SVG文件,它占用的磁盘空间减少了68%。

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


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

    作为一个完全不懂技术的人,我按照上面的建议,在文本编辑器中打开了我的SVG。上述问题都不在我的文件中,所以我将该文件与一个工作的SVG文件进行了比较,尝试了一些东西,发现 “0 0禁止重复
    在代码的最后,标签之外的部分是罪魁祸首!删除了这个,瞧!-)你删除了用于sketch的xmlns了吗?还是添加了sketch:type?“我修改了一个文件”相当模糊。以前是什么?你做了什么修改?很抱歉,缺少信息,我的意思是我在illustrator中编辑了图像(我删除了一个元素,一棵树)再次将文件保存为svg,现在我无法打开它,它说“此svg无效。请在打开之前验证它”。我发布的错误来自在线验证工具。问题中没有编码属性。字符串
    “sketch:type“由联机验证工具标记的
    由相同的字节序列编码,无论编码是UTF-8还是Windows-1252。因此,这不能解决OP的问题。我的SVG文件已经有了
    encoding=“UTF-8”
    在其标题中。问题是文件未正确进行UTF-8编码。因此,我在文本编辑器中运行了到UTF-8的转换,并保存,然后SVG文件在Illustrator CS6中完美打开。感谢Robert L-您的评论让我得出了以下答案:)
    <g id="city-copy" transform="translate(1305.000000, 47.000000)" sketch:type="MSShapeGroup">