无法打开 .svg 文件:XML 解析错误

无法打开 .svg 文件:XML 解析错误

今天升级到 20.04,不知何故,文档查看器无法打开.svg文件。它一直出现此错误。以前,当我使用 18.04 时,一切都运行正常。我没有遇到过这样的错误。

XML parse error: error code=201 (3) in (null):606:15: Namespace prefix xlink for href on image is not defined

编辑

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="200" height="200">
  <image id="image0" width="200" height="200" x="0" y="0"
    xlink:href="data:image/png;base64

答案1

您的文档查看器抱怨svg文件xlink某处有未声明的符号。因此,您的svg文件无效xml,文档查看器抱怨正确。也许在较新的版本中它对此更加严格。

要修复您的文件,请使用编辑器打开它,并确保xlink声明包含在<svg>文件最开始的标签中,它应该看起来像这样:

<svg xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink">

更新:对于您的文件,请更改此行:

<svg width="200" height="200">

更改为:

<svg width="200" height="200"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink">

答案2

看:<svg> - SVG:可缩放矢量图形 | MDN

svg元素是定义新坐标系和视口的容器。它用作 SVG 文档的最外层元素,但也可用于在 SVG 或 HTML 文档中嵌入 SVG 片段。

笔记:xmlns属性仅必需的在 SVG 文档的最外层 svg 元素上。对于内部 svg 元素或 HTML 文档内部则不需要。


大多数情况下,svg标签具有以下属性就足够了:xmlnsviewBox;可选的widthheight

<svg xmlns="http://www.w3.org/2000/svg"
     viewBox="0 0 16 16" width="50" height="50">
  <g>
    <path d=". . ."></path>
  </g>
</svg>

相关内容