Extensions
  • Home
  • Add-ons
  • Themes
  • Approval Queue
  • About
  • Upload Extension
  • Sign in
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    DEVELOPMENT

    • Roadmap

      See which projects are currently being worked on and what's next.

    • Documentation

      Guidelines, release notes and development docs.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

All Add-ons

Add-on ToothPaste (Paste SVGs)
ToothPaste (Paste SVGs)

Paste SVG from Clipboard as Grease Pencil or Curves.
Add-on by Todor-Hlebarov
About What's New Permissions Reviews Version History

Version History

1.1.5
Compatibility
Blender 4.3 and newer
  • 119.3 KB
  • 1612
  • March 31st, 2026

Changelog

  • Fixed issues when pasting from Illustrator and Figma
  • Fixed issues with more complex shapes being rendered correctly
  • Added support for GP groups → SVG Layers and Groups turn into GP groups now with an optional toggle, retaining the layer structure.
Compatibility
Blender 4.3 and newer
Downloads
1612
Size
119.3 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Approved
v1.1.5 119.3 KB
1.1.4
Compatibility
Blender 4.3 and newer
  • 115.7 KB
  • 413
  • March 19th, 2026

Changelog

  • Blender 5.1 support
  • Materials now transfer from SVG to Grease Pencil correctly and stay editable after import
  • Multilevel masks are now supported
Compatibility
Blender 4.3 and newer
Downloads
413
Size
115.7 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Approved
v1.1.4 115.7 KB
1.1.3
Compatibility
Blender 4.3 and newer
  • 114.3 KB
  • 16
  • March 18th, 2026

Changelog

  • Blender 5.1 support added
  • SVG materials transfer correctly to GP materials
Compatibility
Blender 4.3 and newer
Downloads
16
Size
114.3 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Unlisted by author
v1.1.3 (unlisted) 114.3 KB
1.1.2
Compatibility
Blender 4.3 and newer
  • 114.2 KB
  • 107
  • March 17th, 2026

Changelog

Removed run_tests and pycache

Compatibility
Blender 4.3 and newer
Downloads
107
Size
114.2 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Approved
v1.1.2 114.2 KB
1.1.1
Compatibility
Blender 4.3 and newer
  • 170.8 KB
  • 14
  • March 11th, 2026

Changelog

Name updated to "ToothPaste (Paste SVGs)"

Compatibility
Blender 4.3 and newer
Downloads
14
Size
170.8 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Awaiting Review
v1.1.1 170.8 KB
1.1.0
Compatibility
Blender 4.3 and newer
  • 167.6 KB
  • 22
  • March 4th, 2026

Changelog

ToothPaste for Blender v1.1.0

Paste SVG content from clipboard into Blender as Grease Pencil, Curves, Text, and Images.

Current Scope

ToothPaste is focused on Blender 4.3+ (Grease Pencil v3) and supports practical SVG copy/paste workflows from:

  • Affinity Designer
  • Adobe Illustrator
  • Figma
  • Inkscape

Features

  • Paste SVG from clipboard as Grease Pencil (Paste as Grease Pencil)
  • Paste SVG from clipboard as Curves (Paste as Curves)
  • Split imported SVG into GP layers (Split into GP Layers)
  • Split existing multi-layer GP object into separate GP objects (Split layers into objects)
  • Rebuild SVG mask/clip relationships using GP layer masks + holdout where possible
  • Import SVG text as Blender FONT objects
  • Import SVG <image> elements (embedded base64 or valid local paths)
  • Paste bitmap image from clipboard using Blender built-in image paste
  • Paste image as Mesh Plane or Reference
  • Paste location controls for all modes (World Origin or Cursor)
  • GP material mapping for fill + stroke color
  • Partial gradient mapping from SVG gradients to GP Fill Gradient

Gradient Support (Partial)

Gradients are supported on a best-effort basis for Grease Pencil fill materials:

  • Linear and radial SVG gradients are detected
  • Base/secondary colors are mapped from gradient stops
  • Gradient transform/location/rotation/scale are approximated to GP material controls

Important:

  • Gradient mapping is still not 1:1 with source editors in all cases
  • Some gradients will need manual tweaking after import
  • This is currently partial support, not full SVG gradient parity

Requirements

  • Blender 4.3.0+
  • Windows, macOS, or Linux

Installation

  1. Open Blender
  2. Go to Edit > Preferences > Add-ons
  3. Click Install...
  4. Select the addon ZIP (or repository folder ZIP)
  5. Enable Import-Export: ToothPaste for Blender

Usage

  1. Copy SVG content from your design app
  2. Open View3D > Sidebar (N) > ToothPaste
  3. Use the grouped tools:
    • Grease Pencil
    • Curves & Text
    • Images
    • Paste at:

Panel Groups

  • Grease Pencil
    • Paste as Grease Pencil
    • Split into GP Layers
    • Split layers into objects
  • Curves & Text
    • Paste as Curves
  • Images
    • Paste Image (Clipboard)
    • Mesh Plane / Reference
  • Paste at:
    • World Origin / Cursor

SVG Support Summary

Supported

  • Geometry: path, rect, circle, ellipse, line, polyline, polygon
  • Group hierarchy via top-level <g>
  • CSS class-based styles in <style> blocks (common in Illustrator exports)
  • Fill/stroke color mapping to GP materials
  • Stroke width mapping (best effort)
  • Mask/clip reconstruction to GP layer masks/holdout in common workflows
  • Text extraction to Blender font objects
  • SVG image extraction to Blender objects

Limited / Partial

  • Gradients: partial mapping only (see section above)
  • Text layout fidelity (tspan, advanced typographic layout)
  • Complex nested masking/clipping edge cases
  • Very complex paths and arcs may differ slightly

Not Fully Supported

  • Full SVG rendering parity with browser engines
  • All filter/pattern/blend-mode effects
  • Full transform semantics across every editor/export variant

Troubleshooting

  • No valid SVG layers, text, or image content found
    • Ensure SVG has visible geometry/text/image data
    • Try grouping artwork into top-level groups
  • Clipboard does not contain valid SVG
    • Copy raw SVG text or copy as SVG from your editor
  • Failed to create image object
    • Switch image mode (Mesh Plane/Reference) and retry
    • Check clipboard/image data validity
  • Masking mismatch
    • Share the source SVG export and expected Blender mask setup

Notes for Packaging

blender_manifest.toml excludes non-essential packaging paths (including images/) for cleaner builds.

Changelog

v1.1.0 (current line)

  • Added Paste as Curves
  • Added Split into GP Layers
  • Added Split layers into objects with low-level API copy flow
  • Added clipboard image paste and SVG image import modes (Mesh Plane / Reference)
  • Added SVG text import to Blender font objects
  • Added GP mask/clip reconstruction improvements
  • Added cross-editor style handling improvements (Affinity/Figma/Illustrator/Inkscape)
  • Added partial SVG gradient-to-GP material mapping
  • Added stroke/fill material naming cleanup (Fill/Stroke)

License

GPL-3.0-or-later

Compatibility
Blender 4.3 and newer
Downloads
22
Size
167.6 KB
Permissions
This version requests the following:
  • Files Import SVG assets and temporary files for text and image support
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Awaiting Review
v1.1.0 167.6 KB
1.0.0
Compatibility
Blender 4.2 LTS and newer
  • 45.6 KB
  • 27
  • October 23rd, 2025

Changelog

SVG Support Limitations

ToothPaste for Blender provides basic SVG import functionality. However, due to the complexity of the SVG specification and Blender's Grease Pencil architecture, some features are not supported.

✅ Supported Features

Shape Elements

  • <path> - SVG path data
  • <rect> - Rectangles (converted to paths)
  • <circle> - Circles (converted to paths using arcs)
  • <ellipse> - Ellipses (converted to paths using arcs)
  • <line> - Lines (converted to paths)
  • <polyline> - Polylines (converted to paths, open)
  • <polygon> - Polygons (converted to paths, closed)

Layer Structure

  • <g> elements are treated as layers
  • Layer names extracted from id or inkscape:label attributes
  • Multiple layers supported

SVG Editors

  • Adobe Illustrator
  • Affinity Designer
  • Inkscape
  • Any editor producing standard SVG

❌ Not Supported

Transforms

The addon does not apply SVG transforms. This includes:

  • transform="translate(x, y)"
  • transform="rotate(angle)"
  • transform="scale(x, y)"
  • transform="skewX(angle)" / transform="skewY(angle)"
  • transform="matrix(...)"

Workaround: Flatten transforms in your SVG editor before copying:

  • Inkscape: Path → Object to Path
  • Illustrator: Object → Expand Appearance
  • Affinity Designer: Layer → Expand Stroke / Convert to Curves

Styling & Appearance

  • No gradients (linear or radial)
  • No patterns (fills or strokes)
  • No opacity/transparency control
  • No stroke width preservation
  • No fill/stroke colors (handled by Blender's material system instead)
  • No filters (blur, drop shadow, etc.)
  • No blend modes

Note: Grease Pencil materials in Blender can be adjusted after import.

Advanced Path Features

  • Quadratic Bézier curves - Converted but may lose precision
  • Arc path commands - Partially supported
  • Nested paths - Only top-level paths in groups are imported

Text

  • <text> elements are not supported
  • <tspan> elements are not supported

Workaround: Convert text to paths before exporting:

  • Inkscape: Path → Object to Path
  • Illustrator: Type → Create Outlines
  • Affinity Designer: Layer → Convert to Curves

Masks & Clipping

  • <mask> elements are not imported
  • <clipPath> elements are not imported
  • <defs> definitions are parsed but not applied

Workaround: Flatten masks/clips in your editor:

  • Inkscape: Object → Clip → Release, then manually cut paths
  • Illustrator: Object → Expand
  • Affinity Designer: Use destructive boolean operations

Images & External Resources

  • <image> elements (embedded or linked) are not supported
  • xlink:href references are not supported
  • External CSS stylesheets are not supported

Symbols & Use

  • <symbol> definitions are not imported
  • <use> instances are not supported

Workaround: Expand symbol instances before exporting

Viewbox & Coordinate Systems

  • Custom viewBox attributes may cause incorrect scaling
  • Coordinate system transformations are not fully supported

🔧 Known Issues

Precision

  • Floating-point rounding may cause minor differences in curves
  • Very small or very large coordinates may not import correctly

Blender Grease Pencil v3 (4.2+)

  • GP v3 API is relatively new and may have differences across Blender versions
  • Layer naming API may vary - fallback behavior is implemented

Performance

  • Very complex SVGs with thousands of paths may be slow to import
  • Large file sizes may cause clipboard limitations on some OS

💡 Best Practices

For Best Results:

  1. Simplify before exporting

    • Merge overlapping paths
    • Remove hidden layers
    • Delete unused elements
  2. Convert advanced features to basic paths

    • Text → Paths
    • Strokes → Fills
    • Symbols → Expanded instances
  3. Use groups for layers

    • Group related paths in <g> elements
    • Name groups with meaningful layer names
  4. Test with simple SVGs first

    • Start with basic shapes
    • Verify import works correctly
    • Then try more complex artwork
  5. Keep SVG file size reasonable

    • Clipboard may have size limits (typically 1-10 MB)
    • Simplify paths to reduce complexity

📚 Further Information

SVG Specification

This addon implements a subset of the SVG 1.1 specification focused on path geometry extraction.

Blender Grease Pencil

The import relies on Blender's built-in wm.grease_pencil_import_svg operator, which has its own limitations.

Contributing

If you need support for additional SVG features, please open an issue on the project repository with example SVG files.

🆘 Troubleshooting

"No valid SVG layers found"

  • Ensure your SVG has <g> group elements
  • Check that groups contain path data or supported shapes
  • Try ungrouping and regrouping in your SVG editor

"Invalid XML format"

  • SVG must be valid XML
  • Check for unclosed tags or malformed attributes
  • Try re-exporting from your SVG editor

Import creates empty object

  • Check that paths have actual geometry (not just transforms)
  • Verify paths are visible (not hidden or masked)
  • Try converting all objects to paths first

Layer names are wrong

  • Use id or inkscape:label attributes on <g> elements
  • Avoid special characters in layer names
  • Name groups before exporting SVG
Compatibility
Blender 4.2 LTS and newer
Downloads
27
Size
45.6 KB
Permissions
This version requests the following:
  • Clipboard Paste SVG data from Clipboard
License
GNU General Public License v3.0 or later
Status
Awaiting Review
v1.0.0 45.6 KB
7 versions
  • About
  • Privacy Policy
  • Terms of Service
About
  • Blender Foundation
  • Blender Institute
  • Blender Studio
  • License
  • Logo & Trademark
  • Credits
  • Privacy Policy
  • Code of Conduct
Organization
  • People
  • Jobs
Blender Network
Download
  • Latest Blender
  • Blender LTS
  • Previous Versions
  • Experimental Builds
  • Source Code
  • Requirements
  • Benchmark
  • Flamenco
Extensions
  • Add-ons
  • Themes
Developers
  • Get Started
  • Roadmap
  • Projects
  • Docs
  • Blog
  • Forum
  • YouTube
  • Python API
Blender Studio
  • Films
  • Training
  • Tools & Pipeline
Support
  • Manual
  • Community
  • FAQ
Get Involved
  • Documentation
  • Education
News
  • Press Releases
  • User Stories
Blender Conference
Follow Blender
Support Blender
  • Donate
  • One-time Donation
Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite