I'm using Inkscape and I'm searching for a way to outline an object, without making it bigger in the process. Removing the fill and leaving the stroke doesn't work, because the outline sits on the outside of the object itself and therefore makes it bigger. Duplicating the object to a smaller size and using that to cut the original object won't work either, because the outline is supposed to have the same thickness all over. A third way would be to scale the object down once the stroke is there, but because there are holes in the object that are supposed to keep their size too this didn't work for me. Basically, i need an outline that sits on the inner edges of my object.

Thanks for your help!

  • Is this for output to a physical device (e.g. lasercutter) or is it a visual problem only? If visual only, you can clip the shape with itself to hide any growth of outline on the outside of the shape. – Moini Jul 2 '20 at 21:56
  • It is, thanks for your solution – milkyuniverse Jul 2 '20 at 23:00

This is a visually ok method

enter image description here

  1. My blue shape which has holes

  2. An orange stroke is added. Half of the width of the stroke is outside the blue shape.

  3. The same after applying Path > Stroke to Path, Ungroup and moving the parts apart

Warning: Do not move the parts after ungrouping. It's very difficult to align them again. I moved them apart only to show there's 2 different shapes after ungrouping.

  1. Both are selected and Path > Intersection is applied. The result is a curve-like shape which is exactly of the same size as the original (=1) without a stroke.

Unfortunately the result contains a complex curve-like combined path, it's not three simple curves. There's no exact and simple method to convert the result to curves. But visually it is as asked.

  • Thank you very much, this is a great solution! – milkyuniverse Jul 2 '20 at 23:00

If you use View, Display Mode, Outline, the stroke has no thickness. I use this method for laser cut items.

Alternatively, consider that you can convert the stroke to a path, which will generate a pair of paths. You can then delete the outer path, which will result in the inner path being at the position you've described.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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