Well, the raw GPU interface IS not good for 2D text-heavy graphics!! I mean you could render to an offscreen framebuffer but doing it on the CPU is much more convenient.
Actually it is quite true, contrary to many other 3D graphics APIs, OpenGL lacks support for text rendering.
It is up to you to somehow transform text into 3D graphics operations.