5

This is a follow-up to my earlier question, where I learned that one can trace the edge of a vector image by using a union if all the parts are shapes.

However, while I found instructions for converting a shape to a path, I did not find any instructions for the reverse operation.

How can I convert a path to a shape, so I can perform a union?

Edit: For clarification, this is the svg I am trying to trace the outside boundary of.

Update: I first ungrouped, and then did Object to Path. When I subsequently try to perform Path->Union, I get the error

One of the objects is not a path. Cannot perform boolean operation.

Update2: It turned out I had nested groups. After ungrouping the nested groups, I was able to do a Path -> Union. However, this operation had the effect of simply destroying my image and leaving nothing, which was not the intended effect.

  • Note that 'union' doesn't 'trace' anything. It simply combines shapes together. You can't convert a shape to a path, though. A shape is simply an enclosed path. It's already a path. (Unless you mean what Wrz refers too...which is taking the shape's path, and converting that into a shape of it's own. – DA01 Apr 5 '15 at 15:49
  • I fail to reproduce your problem. Select All, Object to Path, Ungroup, Union and I got what I think that you want. Can you please clarify what your problem is? – Wrzlprmft Apr 5 '15 at 21:26
  • @Wrzlprmft, The union does not appear to do anything. The objects are still separate pieces, and I do not have one single piece which reprsents the outer shell of the figure. – merlin2011 Apr 5 '15 at 21:34
  • @Wrzlprmft, I also just noticed I have an error on the bottom, so the Union did not actually work. – merlin2011 Apr 5 '15 at 21:41
  • It may be that the lines in this artwork are unconnected and don't represent the perimeter of an area - I've received files like that before now. Of course, if there's no area defined none of the boolean operations will work. – user19660 May 6 '15 at 14:18
3

As your question does not make sense to me otherwise, I assume that you have something like an object to which Stroke to Path has been applied (see image below) and you want to convert it to a single path.

enter image description here

I further assume that you are only interested in the outline of this object, i.e., the outermost circle in the above example, and not the original line used to create this object (which would be more difficult to reconstruct).

The probably most simple ways to achieve this are:

  • Path → break apart and remove the inner object.
  • Path → break apart and path → union.
  • 1
    I have updated my question with the actual svg in question, because I tried this answer and was not successful in achieving my goal. – merlin2011 Apr 5 '15 at 20:20
1

If you want to trace the outside boundary of your svg, all element must be path: ungroup all and convert to path, but in your svg there are linked offset and nested group, so:

  • first convert to path (select all and Shift+Ctrl+C or Path > Object to path)
  • and then Ungroup all (select all and Shift+Ctrl+G) repeatedly until inkscape say "no groups to ungroup"
  • now you can Path>Union.

If union destroy your object you can try to combine only two elements, then combine the result with other element and so on...

  • Hi nukkio, welcome to GDSE and thanks for your answer. If you have any questions, please see the help center or ping one of us in Graphic Design Chat once your reputation is sufficient (20). Keep contributing and enjoy the site! – Vincent May 8 '15 at 9:50
0

I experimented with the uploaded file and achieved the desired result as follows:

  • select everything, then deselect the "im" part.
  • do Path > Union. All selected paths are unified into one path.
  • select the "im" and do Path > Object to Path, then Object > Ungroup four times consecutively
  • now shift-select the other object (unified in step 2), so that again everything is selected in the drawing and do Path > Union.
0

A variation of @Wrzlprmft's answer worked for me:

  • Create a rectangle bigger than the object you want to work with.
  • Covert the rectangle to a Path (Path -> Object to Path)
  • Place the rectangle / path behind the object you want to work with.
  • Select the rectangle and then select the object you want to work with.
  • Use Path -> Difference to have your object "cut out" of the rectangle.
  • Use Path -> Break Apart to get the individual pieces as separate paths.
  • Profit

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.