I have two identical AI object one placed under another. As a result I see boundaries of bottom shape and it looks like sharpened. Why this happen? Icon.png

  • From the screenshot, it just looks like the two versions of the shape aren't quite perfectly aligned. – Westside Nov 17 '16 at 12:40
  • 1
    @Chris you woud get same error even is they were. – joojaa Nov 17 '16 at 12:43

Because the render engines anti-alias filter is built with a false assumption. Same problem applies to most commercially available vector rendering engines, or in fact many of them are way worse. This is the same reason why the conflation artifacts happen. For different errors caused by the same assumption. Some related posts here, here and here.

Quite simply, we are educating our students with erroneous/imprecisely worded information and nobody bothers to check the state of the art before they start doing things like this. This is not exactly a bug since its working as intended, just the intention is wrong.

The error assumption is that you can replace coverage calculation with alpha blending. This is not true! A simple example, would be a pixel half covered with a shape over a shape that covers the other half. In the real world this pixel would not show through at all but because of alpha blending rules the pixel is now according to rules of alpha blending

 alpha = alphaFG+alphaBG(1-alphaFG)

Which results in 0.5+0.5*(1-0.5) = 0.5 + 0.25 = 0.75 while the analytical result is 1.0. Similarly your specific case if the surfeace overlaps but overlaps perfectly with a other shape you get 0.5+0.5*(1-0.5) = 0.5 + 0.25 = 0.75 with 50% coverage while the analytic solution is 0.5.

So you see basically the mathematics behind the rendering engines anti-aliasation is just simply wrong. If you export that image with art optimized anti-alias it will not have this problem since sampling is not prone to such errors.

Adobe is currently working on fixing this problem after 10-15 years of inactivity so the issue will, probably, be gone some time in the future. In fact you can hardly ever notice it in the newest version. Something i can not say for chrome or firefox.

  • Thank you for such a detailed response. Very useful info. – KFifa Nov 17 '16 at 13:33

The anti-aliasing algorithm of Illustrator favours high contrast, dark objects. So the darker the object against the lighter the background, the more effort it puts into anti-aliasing.

Turn on pixel preview.

  • No thats not the reason (also they dont do what you describe), it really is a flaw in how they approach the problem i can easily do this in reverse too and get white bleedout – joojaa Nov 17 '16 at 13:06

Your Answer

