为什么使用 inkscape 创建的 SVG 中有黑框?

为什么使用 inkscape 创建的 SVG 中有黑框?

使用 Inkscape 创建 SVG 文件时,有时使用其他程序查看时会看到黑框。它们在 Inkscape 中看起来不错,但我的文件浏览器 Caja 会显示一个黑色矩形:

在此处输入图片描述

我认为在有文本字段时我更常看到这种情况。而且我认为我在 Wikipedia Commons 上经常看到这个问题。

答案1

http://wiki.inkscape.org/wiki/index.php/Frequently_asked_questions详细信息,简而言之:

  • 问题是“流动文本”。
  • 使固定选择文本框并点击Text > Convert to Text

答案2

问题是,如果您错误地创建了空的流动文本框,那么它们在 inkscape 中很难删除。通过使用文本编辑器打开 svg,您可以找到以下文本:

    <flowRoot
   style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
   id="flowRoot3304"
   xml:space="preserve"
   transform="translate(74.961781,225.93469)"><flowRegion
     id="flowRegion3306"><rect
       y="73.362183"
       x="-594"
       height="226"
       width="415"
       id="rect3308" /></flowRegion><flowPara
     id="flowPara3310" /></flowRoot>

删除和之间的所有内容(包括<flowRoot和)</flowRoot>将会删除黑框(当然还有它可能包含的文本,在上面的例子中没有文本)。尝试之前请先备份!

答案3

有多种方法可以删除 flowRoots:

使用(Inkscape)替换 notempty flow-text

  • 单击 Inkscape 中可见的文本或单击 Inkscape 的 XML 编辑器中的 -tag
  • 转到Text菜单:单击Convert to Text(您也可以单击 Unflow,但此选项有时会替换文本)
  • 对所有(非空)流文本重复
  • 保存文件(如果您保存为优化 SVG,如果您忘记了一个文本,您将收到 flowRoot 警告)

还有自动脚本

inkscape filename.svg --verb=EditSelectAll --verb=ObjectFlowtextToText --verb=FileSave --verb=FileClose --verb=FileQuit

黑色方块不会被渲染(文本编辑器)

添加在(或在)fill-opacity="0"中,其位于和之间< rect … fill-opacity="0"/>< path d="…" fill-opacity="0">< flowRegion>< /flowRegion>

进一步的方法 如果不起作用:请参阅进一步的方法维基媒体

相关内容