Resposta parcial, listando algumas possibilidades:
Existem vários programas que você pode usar para renderizar texto em imagens, por exemplo:
-
convert
do ImageMagick / GraphicsMagick
-
pbmtext
do NetPBM, renderiza para o Bitmap portátil
-
paps
, renderiza para Postscript usando o Pango
-
enscript
, processa para Postscript
Mas a conversão de um formato diferente para o PNG não deve ser um problema.
Destes, apenas enscript
suporta cores através de "escapes especiais". Estes não são os mesmos que o terminal escapa, então você irá convertê-los com o awk / perl etc.
Outra opção é renderizar tudo em um xterm e captura de tela.
Como você pode ver, todos eles são bem complicados, requererão um esforço não trivial para fazê-los funcionar. O que não é surpresa, porque basicamente você quer replicar toda a parte de renderização do seu terminal.
Pode ser mais fácil apenas armazenar a saída em si e recuperá-la em um terminal quando quiser examiná-la.