PDC pixel perfect arc

Hi, I’m trying to make pixel perfect rounded corners using PDC. But no matter what I try the arc is either correct for Basalt or semi correct for Aplite.

This is what I’m trying to get:

I got almost perfect result with second shape from this experiment:

Link to PDC Editor with those shapes:

http://irek.gabr.pl/pdce.html?name=font1b.pdc&data=UERDSVoAAAABACcAEQACAAEAAAD%2FAAAIAAIAAQARAAEAEQAPAAwADwAJAA4ABwANAAQACgACAAQAAQAAAP8AAAgAFAABACQAAQAkAA8AHwAPABwADgAaAA0AFgAJABQABAA%3D

It gives good result for Basalt, but it’s one pixel off for Aplite:

I tried a lot of combinations but the PDC rendering is very unpredictable. It seems to render differently in width than in height of the shape when there is no stroke. With stroke it’s easier to get expected shapes but then I get missing pixels on diagonal shapes. I tried doing that with Precise Paths using sub pixel precision but still, no success.

Is there an established way of drawing good arches? Or is this a lost cause?

1 Like

It is a bit of a lost cause. Strokes are known to be more predictable, fills are very imprecise, which is usually fine since fill borders are covered up by the strokes. Optimization of PDCs seems more about speed than precision, which is why I usually only recommend them for larger not too complex objects where precision isn’t as big of a deal. I saw you experimented with circles as a round part of the shape, why not use those?

2 Likes

Thanks, this makes a lot of sense. Unfortunately I can’t use circles in most of my shapes.

Here is an example of 3, 4 and 5. And only in digit 4 circle can be used.

Well, in that case I have plan B. I will use bitmap images to add rounded shapes in selected places for each digit.

Not the most elegant solution, a bit brute force but it will enable me to make roundness optional in settings.

1 Like