跳过主要内容
使用指南

为什么科研图修订需要真正可编辑的 SVG 与 PPTX

检查真实 XML、四项修改操作与像素尺寸,区分文字、路径和内嵌图片。

FigEditor 团队

只有说明它能支持哪种修改,“可编辑”才有实际意义。选择导出格式前,试做四件事:改一个词、移动箭头、给区域换色、替换照片。整张图片放进幻灯片,通常只能在整图层面进行图片操作。

查看扩展名背后的结构

一个最小的原创 SVG 文字对象如下:

<text x="24" y="40" font-family="sans-serif" font-size="18">Control</text>

用于描绘轮廓的路径则可能类似:

<path d="M24 40 L24 22 L36 22" fill="none" stroke="black"/>

第二段只是简短的路径演示,并不是 Control 一词的完整字形。它说明几何图形与文字内容属于不同对象。SVG 的 <image> 还可以内嵌整张位图,因此 .svg 不足以证明标签仍是文字。SVG 文字规范介绍了文字元素的结构。

区分幻灯片原生对象与图片

PPTX 是由 XML 和媒体文件组成的压缩包。微软的 PresentationML 文档介绍了演示文稿各部分与幻灯片内容的关系。幻灯片中的原生形状通常使用 p:sp,文字内容可能位于 a:t,图片对象则使用 p:pic。这些是检查线索,并非完整的可编辑性保证:文本框可能为空,分组可能难以选择,也可能所有有意义的内容都藏在一张图片里。

针对自己拥有的本地 PPTX 副本,可用 Python 检查幻灯片 XML:

from zipfile import ZipFile
from xml.etree import ElementTree as ET
ns = {'p': 'http://schemas.openxmlformats.org/presentationml/2006/main',
      'a': 'http://schemas.openxmlformats.org/drawingml/2006/main'}
with ZipFile('figure.pptx') as deck:
    slide = ET.fromstring(deck.read('ppt/slides/slide1.xml'))
    print('Shapes:', len(slide.findall('.//p:sp', ns)))
    print('Pictures:', len(slide.findall('.//p:pic', ns)))
    print('Text:', [node.text for node in slide.findall('.//a:t', ns)])

这是检查方法示例,没有声称已对你的文件执行。之后仍应在 PowerPoint 中打开并完成真实修改。字母若已转成大量小路径,仅看形状数量就可能误判。

执行四项修改验收

在 SVG 编辑器打开支持的源文件,把 Control 改为 Vehicle control。移动一条箭头,确认两端仍表达正确关系;只给一个区域换色,不改变标签;替换一张独立照片,并比较裁切。

导出可编辑 PPTX 后,用接收方的软件再做一次。FigEditor 当前导出器会把支持的矢量路径和文字转换为原生对象,将支持的位图层保留为独立图片。遇到提示不支持的渐变、裁切、滤镜、非零虚线偏移或复杂文字样式时,仍需 SVG 或其他经过检查的交付方式。不要静默压平后继续宣称完全可编辑。

单独计算尺寸,不与可编辑性混淆

1,200 像素的位图以 100 mm 宽打印,约为 305 ppi:1,200 / (100 / 25.4)。同一面板放大到 200 mm,约为 152 ppi。把它放进 SVG 或 PPTX,不会增加原始细节。真正的矢量线条仍是几何对象,但最终阅读尺寸下的线宽也需要检查。

分别保存 figure-2-master.svg、审核后的 figure-2-revision-03.pptx 和实际投稿副本。提交前核对期刊接受的格式。可编辑母版能减少返工,但不能替代科学审查、第三方素材许可或出版方的 AI 政策。