GL2PS is a C library providing high quality vector output for any
OpenGL application. The main difference between GL2PS and other
similar libraries (see section 7) is the use of sorting algorithms
capable of handling intersecting and stretched polygons, as well
as non manifold objects. GL2PS provides advanced smooth shading and
text rendering, culling of invisible primitives, mixed vector/bitmap
output, and much more...  GL2PS can currently create PostScript (PS),
Encapsulated PostScript (EPS), Portable Document Format (PDF) and
Scalable Vector Graphics (SVG) files, as well as L^AT[E]X files for the
text fragments. GL2PS also provides limited, experimental support for
Portable LaTeX Graphics (PGF).  Adding new vector output formats should
be relatively easy; you can also use the excellent pstoedit program to
transform the PostScript files generated by GL2PS into many other vector
formats such as xfig, cgm, wmf, etc.

Homepage:
https://geuz.org/gl2ps/
