Is it possible to mathematically calculate visual balance?
Below is an example of what I mean. Both images contain the letters “M” and “C,” but are aligned differently. In the first image, the letters are centered and formatted to have normal kerning. In the second, the “C” is shifted to the right to improve the visual balance of the image as a whole.
Since the visual weight in the letter “C” is on the left and not centered as it is in the letter “M,” the visual balance of the first example is off.
Would it be effective to mathematically determine a weighted average of the letters (white parts) and adjust spacings accordingly? This could be done by defining a function to represent the total height of the white bits at any given x value, then determining the weighted average (integral of x*f(x)) to find the visual “center” of the text and adjusting the text’s position so that that “center” is in the image’s center.
What your essentially asking is a special case of kerning. Systems that do automatic kerning have been done. This is called optical kerning in inDesign, you can find a few other companies have made their own tools. While its true that manual kerning make for better results in many cases than optical kerning there are situations where anything better than nothing is acceptable.
However, the algorithms behind different kerning solutions are usually trade secrets. But the lore knows a few patents and papers on how to automate kerning (see google scholar search for example). Overall this is a very complicated thing as the human visual system is incredibly complicated and kerning needs to account for very many things to be perfect.
So while doing a automated system may take quite a lot of development time to give even acceptable solutions, there is no doubt that such systems could not be made. In your case a custom system that may or may not pay itself back. It may be worth the investment in some special cases.
In any case if there is a formula its probably is hideously complex, and we dont know it as of yet. But that does not mean it does not exist. So currently you may be better off manually doing this in most cases that matter in any way.
Source : Link , Question Author : DefinitelyNotAPlesiosaur , Answer Author : joojaa