Skip to content

Path & Vector

Paint Forge ships a full vector pipeline alongside its raster engine. These features unlock non-destructive shape work, editable strokes, and reusable brushes — all backed by the same underlying engine the rest of the app uses.

Path Boolean Operations

Combine two vector objects into a new PathObject using boolean operations. Select exactly two shapes (rect, ellipse, polygon, star, path, or brush stroke), then choose an operation from the Image > Path submenu, the Arrange toolbar, or the command palette.

OperationResult
UnionOutline that surrounds both shapes — useful for merging overlapping forms.
SubtractRemoves the second shape from the first — punches a hole.
IntersectKeeps only the area where both shapes overlap — useful for clipping a shape against another.
ExcludeKeeps the area covered by either shape but not both — produces a "donut" or XOR pattern.
Boolean operations replace the source objects with a single new path. Duplicate the originals first (Ctrl+D) if you need to keep them.

Brush Stroke Editing

Vector brush strokes (BrushStrokeObject) remain editable after you draw them. Double-click a stroke with the Select tool to enter Edit Brush Stroke mode. Each centerline point shows two handles: a blue dot for position and an amber ring for per-vertex width.

  • Drag the blue handle to move a point — half-width and pressure ride along untouched.
  • Drag the amber ring to project the cursor onto the perpendicular and resize that segment.
  • Shift+click on the polyline to insert a new point with interpolated halfWidth.
  • Alt+drag from an endpoint to extend the stroke with new points.
  • Shift+Alt+click on the polyline to split the stroke into two independent objects at the click point.
  • Delete or Backspace removes the selected point (when at least 3 would remain).
  • Escape returns to the Select tool.

Touch input

Handle hit zones grow on touch devices and endpoint markers gain an accent ring so the extend / split affordances stay reachable with a finger.

Custom Vector Variants

Beyond the 47 built-in vector brush variants, you can save your own. The Brush Customize dialog lets you tune taper, halo, color jitter, pen tilt, pressure curve, dash pattern, and per-vertex gradient stops — then save the result as a Custom Vector Variant. Saved variants appear under their own section in the Variant Grid and can be renamed, duplicated, or shared to the community.

Custom variants merge their overrides on top of a base built-in variant. Falsy values like colorJitter: 0 override the base, so you can disable a feature the parent enabled.

Stroke Recording & Macros

Record a sequence of strokes and replay them later with different colors, sizes, or even a completely different brush variant. Recordings can be saved as macros and recalled from the Brush Macros picker for one-click replay.

Use case

Record a leaf-cluster pattern with one variant, then replay it across a forest scene with the variant set to a different color or texture per macro instance — faster than copy-paste and stays editable as separate stroke objects.

Animation Power Tools

Frame Groups

A frame group is a group layer with cel-animation playback enabled. When isFrameGroup is on, only the layer at currentFrameIndex renders during compositing — siblings stay in the document and remain editable but are hidden from the active frame. Each group has its own FPS, loop mode, and per-frame duration overrides.

  • Loop modes: loop (wrap), pingpong (forward+reverse), once (stop at the end).
  • Per-frame duration: override the group FPS for individual frames via frameDuration.
  • Use Alt+, and Alt+. to step backward / forward through frames manually.
  • The Animation panel cel blocks size in proportion to each frame’s duration.

Onion Skin

Onion skin renders ghosts of adjacent frames around the active frame so you can register new strokes against neighbors. Configure 0–3 previous and next frames with independent opacity and tint per direction. Strictly view-only — exports stay clean.

Draw-Through & Auto-Advance

Two stroke modes specific to frame groups (set per-group):

  • Draw-Through: a raster stroke on any child copies onto every sibling on stroke end. Use this for backgrounds shared across all frames.
  • Auto-Advance: stroke end steps currentFrameIndex forward and activates the next child. Lets you draw frame-by-frame without leaving the canvas.
Both modes apply BEFORE the history push, so a single undo rolls back the stroke, the sibling copies, and the frame advance together.

Batch Operations

Operations that apply across many layers or objects in a single command. All push one history entry so a single undo reverses the whole batch.

OperationDescription
Batch Color ReplaceReplace one color with another across vector fills/strokes and/or raster pixels. Configurable tolerance and scope (selected / active layer / all).
Auto-Organize LayersSort top-level layers into Text / Raster / Shapes / Adjustments group folders.
Batch Resample LayersScale every visible non-adjustment layer’s raster + vector geometry by a single factor (1–400%) using bilinear interpolation.
Sort LayersSort siblings by name, type, or blend mode — preserves group hierarchy via DFS rebuild.
Apply Filter to All Visible LayersRe-applies the current FiltersPanel state to every visible raster layer; vector-only layers are skipped.
Batch ExportExport each layer or object as a separate file with a configurable naming template, packaged as a ZIP.
Batch RenameRename multiple objects with token-based templates ({name}, {type}, {#}, {layer}).

View Modes

View-only display modes that change how the canvas is rendered without affecting export. All toggle from the View menu or command palette.

ModeUse case
Color Blindness SimulationPreview your work as protanopia, deuteranopia, tritanopia, or achromatopsia would see it. Cycle with Ctrl+Shift+B.
Exposure Clipping OverlayHighlights blown highlights in red and crushed shadows in blue. Configurable thresholds.
Outline ModeWireframe rendering: blue 1px outlines on white, no fills, raster, or effects. Toggle with Ctrl+Shift+O.
Off-Canvas RenderingPhotoshop-style pasteboard. When enabled, content extending past document bounds renders onto the editor pasteboard.
Pixel GridShows a 1px grid between pixels at 800%+ zoom for pixel-precise edits.
Render StatsOverlays FPS, layer count, object count, and dimensions — useful when profiling performance.

Export safety

View modes never affect export output. PNG / JPEG / GIF and every other exported format always render the unmodified composition.

Workflow Recipes

Frame-by-Frame Animation

  • Create a group layer, then enable Frame Group on it.
  • Add empty layers as children — each becomes a frame.
  • Turn on Auto-Advance and Onion Skin (1 prev, 1 next).
  • Draw on the active frame; on stroke end the timeline advances and a new ghost appears for reference.
  • Open the Animation panel to scrub or play back.

Non-Destructive Color Grade

  • Stack adjustment layers above a raster layer (Curves, then Color Balance, then Split Toning).
  • Use Layer Comps to save before/after configurations.
  • Turn on Filters Split View to drag-compare original vs graded.
  • Use Copy/Paste Adjustment to reuse the same grade across other projects.

Reusable Vector Stamps

  • Draw a complex shape using the brush + path tools.
  • Save it to the Object Library (right-click → Save to Library…).
  • Use the Pattern Brush dialog to scatter copies of the saved object along a brush stroke centerline.
  • Optionally orient each instance to the centerline tangent for natural strokes.
Was this page helpful?
Advanced Features - Paint Forge Docs