Inkscape的SVG文件:导入图形的位置路径

时间:2018-03-03 16:13:10

标签: svg inkscape

Inkscape是一个非常好的工具,用于将PDFEPS科学图表导入空白页面,然后在图形顶部放置箭头,文本,使科学绘图汇编它们在所需的位置,然后保存为唯一的PDF页面,然后可以将其figure作为latex文档包含在其中。

Inkscape中的项目不仅可以保存为pdf,还可以保存为.svg文件。可以使用任何文本编辑器打开此文件,例如vimgedit。项目的所有信息都保存在此文件中。

大多数时候,我需要继续处理我曾经导入到我及时回收的inkscape项目中的原始PDF图。就我而言,inkscape界面中没有选项可以让您知道哪些是曾经导入到inkscape项目中的pdf图形的原始位置路径。例如,右键单击图形并打开Object Properties,或双击图形并检查右侧打开的Objects子面板不会通知所需的位置路径。

我确信.svg文件中的某处可以写入导入的pdf图的路径。但是,编写svg文件的语言对我来说是新的。

在Inkscape中,我如何知道导入图形的位置路径? 或者在svg文件中存储导入图形的位置路径?

作为一名MWE,我创建了inkscapesvg文件,其中只包含一个PDF图。这个文件是393行,所以这里复制粘贴有点困难。因此,以下是此svg文件的链接: http://www.mediafire.com/file/2ad1rur89251vim/fit1_presentation.svg

3 个答案:

答案 0 :(得分:1)

该PDF的原始位置不会存储在任何地方的SVG文件中。

但是,我的建议是关于如何将其记录在一个易于访问的地方,以供日后检索。

  1. 导入PDF后,选择所有新添加的对象并对其进行分组(Ctrl-G)。
  2. 打开XML编辑器(如果它尚未打开)(Shft-Ctrl-X)
  3. 您刚刚创建的论坛应该已被选中。你应该看到它有一个' id'属性。单击XML编辑器右上角的id行。
  4. 将PDF的原始网址或路径输入到下方的ID值框中。
  5. 点击设置。
  6. Inkscape XML editor

    将来,如果您需要找到PDF的路径,只需选择正确的组即可。再次打开XML编辑器,瞧。

答案 1 :(得分:0)

不幸的是,信息不存在。导入过程具有破坏性,因为您无法从生成的.svg文件重新创建原始文件,并且Inkscape开发人员似乎有理由认为这意味着保留对原始文件的引用毫无意义。

离您搜索的内容最近,您会发现是否使用Inkscape打开PDF(而不是打开空文件并导入PDF)。如果您然后打开编辑 - &gt;在XML编辑器中,您将在顶级sodipodi:docname元素中找到属性<svg>,其中包含已打开文件的原始名称sans path。不幸的是,只要将项目保存为.svg,文件名就会被覆盖。

您可以做的最好的事情是手动保存原始文件信息作为文档的一部分。由于SVG是一种XML格式,因此您可以或多或少地自由选择您喜欢的元素/属性,只要它不在svg命名空间中(从而成为grafical的一部分)格式化浏览器和其他渲染器尝试解释)或在inkscapesodipodi命名空间中有意义(inkscape用于保存与其UI相关的信息)。

存储文件信息的想法,即使它比标准符号更具创造性,是这样的:打开文件 - &gt;文档属性并选择&#34;元数据&#34;标签。使用&#34;来源&#34;输入文件名的字段有点被盗用,但距离intended content不太远,只要该文件在您自己的计算机上即可。但是您应该知道,信息的存储方式是网络爬虫在互联网上发布时,或者任何寻找rdf / Dublin Core元数据的程序都可以读取的信息。

在文件中,您将找到

信息
<svg>
  <metadata>
    <rdf:rdf>
      <cc:Work>
        ...
        <dc:source>/path/to/file.pdf</dc:source>
      ...

在更自由格式的方法中,您可以使用<desc>元素将文件路径与导入的PDF的最顶层元素相关联 - 这可以与多个导入的文件一起使用。您可以使用&#34;描述&#34;进行设置。对象属性对话框的输入,它将是您为其设置的元素的直接子元素。 SVG规范不限制该元素的内容。

答案 2 :(得分:0)

菜单:文件 - &gt;文档属性(或使用Ctrl + Shift + D快捷键)

标签:元数据

字段:来源

有吗?

您的文件是:

/home/david/fit1.pdf