Images & photos · Browser Image & Drawing Editor
How annotations get baked into pixels when you export an edited image
· How it works
image-editing canvas browser-processing
While you are editing, an arrow is a movable object; the moment you export, it becomes ordinary pixels. This post explains the difference between the editing model and the exported file, and what that means for anyone who receives it.
The arrow you can no longer move — the surprise of reopening an exported screenshot and finding the annotation is now part of the picture
An annotation's lifecycle is shorter than many users expect. Start with the arrow you can no longer move: reopen an exported screenshot and the annotation is now part of the picture. For this flattened-mark explanation, implementation shows Brush marks are painted directly onto the active layer, while line, rectangle and ellipse previews become layer pixels when the pointer is released. Text is rasterised at placement and cannot be re-edited; there is no movable object model behind the canvas.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. Layers remain separate raster canvases during the session, but export composites visible layers into one canvas. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
The mark becomes pixels when placed; this editor never stores it as a movable object
An annotation's lifecycle is shorter than many users expect. See the two worlds inside an editor: drawing tools describe strokes and text, while the photo underneath is a bitmap. For this flattened-mark explanation, implementation shows Text is rasterised at placement and cannot be re-edited; there is no movable object model behind the canvas. Layers remain separate raster canvases during the session, but export composites visible layers into one canvas.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. PNG, JPEG and WebP downloads are flat raster files, not SVG or a layered project document. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
Two raster surfaces during a gesture: the layer and a temporary preview
An annotation's lifecycle is shorter than many users expect. At export time, the editor composites visible raster layers into one flat image rather than shipping a scene graph. For this flattened-mark explanation, implementation shows Layers remain separate raster canvases during the session, but export composites visible layers into one canvas. PNG, JPEG and WebP downloads are flat raster files, not SVG or a layered project document.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. Brush marks are painted directly onto the active layer, while line, rectangle and ellipse previews become layer pixels when the pointer is released. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
Compositing visible raster layers at export time
An annotation's lifecycle is shorter than many users expect. Look closely at anti-aliasing and edge blending: a line's boundary contains mixed colours because the raster is representing coverage between whole pixels. For this flattened-mark explanation, implementation shows PNG, JPEG and WebP downloads are flat raster files, not SVG or a layered project document. Brush marks are painted directly onto the active layer, while line, rectangle and ellipse previews become layer pixels when the pointer is released.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. Text is rasterised at placement and cannot be re-edited; there is no movable object model behind the canvas. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
Worked example: a screenshot with a box, an arrow and a caption — what the recipient's viewer sees and what it cannot separate
An annotation's lifecycle is shorter than many users expect. Try a screenshot with a box, an arrow, and a caption, then ask what the recipient's viewer can actually separate. For this flattened-mark explanation, implementation shows Brush marks are painted directly onto the active layer, while line, rectangle and ellipse previews become layer pixels when the pointer is released. Text is rasterised at placement and cannot be re-edited; there is no movable object model behind the canvas.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. Layers remain separate raster canvases during the session, but export composites visible layers into one canvas. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
What this does not cover — layered project files, editable exports such as SVG, and recovering the original under an annotation
An annotation's lifecycle is shorter than many users expect. The boundary is important: this does not cover layered project files, editable SVG exports, or recovering the original beneath a placed annotation. For this flattened-mark explanation, implementation shows Text is rasterised at placement and cannot be re-edited; there is no movable object model behind the canvas. Layers remain separate raster canvases during the session, but export composites visible layers into one canvas.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. PNG, JPEG and WebP downloads are flat raster files, not SVG or a layered project document. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.
Takeaway: flat exports are the point — how exporting from the Browser Image & Drawing Editor gives you a plain image that opens anywhere
An annotation's lifecycle is shorter than many users expect. The takeaway is that flat exports are the point: the Browser Image & Drawing Editor gives you a plain image rather than a project file with movable marks. For this flattened-mark explanation, implementation shows Layers remain separate raster canvases during the session, but export composites visible layers into one canvas. PNG, JPEG and WebP downloads are flat raster files, not SVG or a layered project document.
Place a rectangle, a line and text on separate raster layers, export once, then reopen the download and try to select an individual mark. Brush marks are painted directly onto the active layer, while line, rectangle and ellipse previews become layer pixels when the pointer is released. The inability to select it is expected because the recipient receives composite pixels rather than editing objects.