I have a SVG path, which is filled with a pattern. The pattern itself is a set of paths. I want to reify the pattern as applied to the path -- turn it into a set of first-class objects which I can manipulate (and which Ponoko can correctly handle). In other words, if the pattern is a checkerboard of black and white squares, I want to end up with 64 square path objects at the end of the operation.

3 Answers 3


Don't use Inkscape's Pattern functionality if you want to use a laser cutter, because there is no way to expand an entire Pattern fill to individual objects.

Instead, create your pattern as individual squares. It's not too difficult.

  1. Create a tiled/repeating pattern by copying and pasting squares. Use Snapping to help you position them correctly.

  2. Make the entire pattern into a combined path by selecting all the squares and click Path > Union

  3. Place the shape to be filled underneath the squares. In the example below I used a heart shape.

  4. Select the squares and the shape and click Path > Division

This will result in a shape with all the individual squares cut out.

For example:

enter image description here

  1. Finally, select and fill the individual pieces.

The result is a shape filled with individual objects which your laser cutter should be able to cut.

enter image description here

  • 1
    This is a very straight-forward and manual solution, perfect for small areas and new users. If you are an advanced user or have a more complex pattern that cannot be made by simply snapping objects to each other, you could try to use the 'tiled clones' feature to create the tiles instead. For hatch patterns, there's an extension that can create hatch fills for paths: wiki.evilmadscientist.com/Creating_filled_regions , and Gcodetools also have an 'area fill' option, that draws different patterns, for example, concentric lines.
    – Moini
    Commented Jun 20, 2018 at 20:45
  • @Moini Absolutely, for more complex patterns tiled clones would be an excellent solution.
    – Billy Kerr
    Commented Jun 21, 2018 at 8:22

There doesn't seem to be a way to do this so I did something similar to DaveMirez, but instead of a screenshot, I used the PNG export function.

I created the patterned object with the pattern exactly how I wanted it, then selected the object and then File->Export PNG Image. Within the export dialog, I made sure the Selection button at the top was highlighted, bumped the dpi up to 300 in the Image Size section, and made sure "Hide all except selected" was checked. Once I exported this image I could File->Import it and, accepting the defaults (dpi from file, none image rendering mode), the image is imported at the correct size. I can use cusp node snapping to align the newly imported image to the previous object so that it's in the exact right position as well.

When doing the Path->Trace Bitmap, I make sure not to check Speckles, Smooth Corners, or Optimize. I want it to be as true a trace as possible. When the trace is applied, you now have a path that matches the original pattern. You can move this to the bottom and delete the imported image as well as the original object.

My end goal was to have the individual strips in the pattern as individual paths so my next step is to select the new path and Path->Break Apart.

  • That's also how I did it.
    – martti
    Commented Apr 22, 2023 at 17:54

I wanted to create a voronoi pattern to lasercut/laser, and came across the same problem when i tried importing the pattern to autolaser.

Solution: screenshot pattern, import as jpg, and trace with color-quantization, save as svg or dxf, and import. Works reasonably well, but you lose some quality with complex patterns.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.