Here is mine explanation: Cairo provides much higher abstractions comparing to OpenGL.
In OpenGL , a basic element is triangle. There is a polygons, textures, etc, but no things like gradients, patterns etc. And no (or very little) support for text rendering. That means it is possible to implement full vector graphics engine using opengl, but not otherwise because functionality of opengl is much wider than of cairo. @ Kilon, if you interested in dragging athens on top of opengl, you can look at OpenVG one of them, is open-source and based on opengl: http://ivanleben.blogspot.fr/2007/07/shivavg-open-source-ansi-c-openvg.html this one, i think might be the best thing to learn how to implement Athens backend for opengl. -- Best regards, Igor Stasenko.
