Keep Research Figures Editable from Draft to Revision
Build a revision workflow with SVG masters, native PowerPoint objects, independent images, and honest export checks.

“Editable” is useful only when you can name the revision it enables. Before choosing an export format, try four operations: change a word, move an arrow, recolor a region and replace a photograph. A single picture placed on a slide permits only the last operation at whole-picture level.
Inspect the structure behind the extension
A minimal original SVG text object looks like this:
<text x="24" y="40" font-family="sans-serif" font-size="18">Control</text>
A path that traces the letters might look like this instead:
<path d="M24 40 L24 22 L36 22" fill="none" stroke="black"/>
The second snippet is only a small illustrative path, not a valid outline of the word Control. It demonstrates why shape geometry and text content are different. An SVG <image> can also embed an entire raster figure. Inspect the actual elements; .svg does not prove that labels remain text. The SVG text specification describes the text-element model.
Distinguish a native slide shape from a picture
PPTX is a package of XML and media files. Microsoft's PresentationML documentation describes how presentation parts relate to slides and their content. In a presentation slide, native shapes normally use p:sp, text content can appear within a:t, and picture objects use p:pic. These structural names are inspection clues, not a complete guarantee of editability: a text box can be empty, a group can be awkward to select, and a picture may contain all the meaningful content.
For a local copy of your own PPTX, you can inspect its slide XML with Python:
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)])
This is an inspection example, not a test already run on your file. Follow it by opening the deck in PowerPoint and making a visible edit. A shape count alone can be misleading when letters have been converted into many small paths.
Use a four-operation acceptance test
Open a supported source in the SVG editor. Change Control to Vehicle control. Move one arrow and confirm both endpoints still communicate the intended relationship. Recolor one region without recoloring labels. Replace one independent photo and compare its crop.
Export editable PPTX and repeat the test in the receiving application. FigEditor's current exporter converts supported vector paths and text into native objects and keeps supported raster layers as independent pictures. Gradients, clipping, filters, nonzero dash offsets and complex text styling still require SVG or another reviewed delivery route when reported unsupported. Do not flatten silently and continue describing the result as fully editable.
Calculate size separately from editability
A 1,200-pixel raster panel printed at 100 mm has about 305 ppi: 1,200 / (100 / 25.4). The same panel at 200 mm has about 152 ppi. Moving that panel into SVG or PPTX does not change its original detail. Conversely, a true vector line remains geometry but still needs an appropriate stroke thickness at final reading size.
Keep figure-2-master.svg, a reviewed figure-2-revision-03.pptx, and the exact submission copy as separate versions. Check the journal's accepted delivery formats before submission. Editable masters reduce revision work; they do not by themselves satisfy scientific review, third-party permissions or publisher AI policies.
