And: historically they've been computed mostly on CPU, but I think it's time for that to change.
It would be great to wait a bit for OS & GPU power management to evolve before biting the bullet on that. My laptop goes from 6 to 2.something hours of battery as soon as I have a GL context opening somewhere, likely because it seems to power on its discrete GPU automatically in that case.
maybe ? the computer on which this happens is a 1070. But please be aware that series 10 are a very small percentage of people. The average laptop of non-tech people around me is easily 8 years old, often on their 2nd or 3rd battery... and these people won't be able to complain easily to anyone when their new battery's life suddenly is halved because of $SOFTWARE.
At any rate, the 2D graphics we expect now are a lot more complex than the unantialiased lines, blits, and fills of old.
1) tricky to shoehorn 2D graphics onto the APIs that GPUs provide and
2) really not needed. I can easily render eg: a world map with hundreds of thousands of lines at hundreds of frames/second with one core.The various libraries such as freetype for font rastrization only works on CPU.
Plenty of work should be done to research and implementation is left to be done in order to use the GPU more widely.
Of course CPU rendering is always more straightforward than GPU, the higher performance comes at a significant cost in complexity.