Decompose Corner & Cap components

Is there a way to decompose only the corner and cap components from scripts? I do not want to removeOverlap() the whole thing, just the components.

1 Like
pen = GSBezStringPen.alloc().init()
for thisPath in thisLayer.paths:
	thisPath.drawInPen_(pen)

pathString = pen.charString()
newPaths = removeOverlapFilter.pathsFromBez_gridSize_(pathString,1.0)

And then you need to step through all hints and delete the remaining corner/cap components.

Or do:

thisLayer.decomposeCorners()
2 Likes

Ah, ha ha. Convenience method. Much better, of course.

Thanks! I was only looking at the GSHint help.

If I select one corner component and try to run »decompose corner« from the context menu, decomposing does not happen, instead the corner plus the node where it was placed on will be removed completely (version 1245).
Is this a bug or am I doing something wrong?
I know i could run »remove overlaps«, but this would »decompose« all of the glyph’s corners and paths, which is not what I want to achieve.

EDIT:
sorry, just realised that this has been resolved in 1246, works perfectly now.

1 Like