Mostrar imágenes en la terminal usando Python

En este artículo, discutiremos cómo mostrar imágenes en una terminal usando Python. Usaremos el módulo climage para lo mismo. Este módulo tiene las siguientes características: 

  • Ayuda a convertir imágenes a sus códigos de escape ANSI para poder convertirlas en imprimibles en interfaces de línea de comandos.
  • Permite codificaciones de color de 8/16/256 bits para imágenes vívidas.
  • Proporciona compatibilidad con ASCII/Unicode para más detalles y paletas ajustables para diferentes temas de terminales

Instalación

Este módulo no viene integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.

pip install climage

Después de la instalación, el siguiente paso es importar las funciones convert() y to_file(), donde la primera realiza la tarea de conversión y la segunda realiza la tarea de conversión y guardar en el archivo de salida si es necesario.

Sintaxis:

convert(filename, is_unicode=False, is_truecolor=False, is_256color=True, is_16color=False, is_8color=False, width=80, palette=”default”)

Parámetros:
filename: Nombre del archivo de imagen.
is_unicode :   si es verdadero, la conversión se realiza en formato Unicode; de ​​lo contrario, se utilizarán caracteres ASCII.
is_truecolor :   si usar colores RGB en la generación, si es compatible con el terminal. Valores predeterminados Falso.
is_256color : Si se utiliza la codificación de 256 colores. Valores predeterminados Verdadero.
is_16color : si se utiliza la codificación de 16 colores. Valores predeterminados Falso.
is_8color : Ya sea para usar los primeros 8 colores del sistema. Valores predeterminados Falso.
ancho : Número de bloques de consola a utilizar. El valor predeterminado es 80.
paleta:Establece la asignación del esquema de colores RGB a los colores del sistema. Las opciones son: [“predeterminado”, “xterm”, “linuxconsole”, “solarizado”, “rxvt”, “tango”, “gruvbox”, “gruvboxdark”]. El valor predeterminado es «predeterminado».
 

to_file(infile, outfile, is_unicode=False, is_truecolor=False, is_256color=True, is_16color=False, is_8color=False, width=80, palette=”default”)

Parámetros:
infile: El nombre/ruta del archivo de imagen.
outfile:   archivo en el que almacenar la string codificada ANSI.

Ejemplo 1: Impresión en Terminal

Imagen utilizada:

Python3

import climage
  
# converts the image to print in terminal
# inform of ANSI Escape codes
output = climage.convert('banana.png')
  
# prints output on console.
print(output)

Producción : 

Ejemplo 2: Guardar la codificación en un archivo.
 

Python3

import climage
  
# saves the converted encoded string
# to banana_ansi file.
output = climage.to_file('banana.png', 'banana_ansi')

Producción :  

[48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48 ;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5 ;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48 ;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [48;5;15m [0m …

Ejemplo 3: Trabajando usando la línea de comando 

También se puede usar una función similar para trabajar con la línea de comando usando construcciones similares, parámetros explicados en la parte anterior.

Sintaxis: 

clima [-h] [-v] [–unicode | –ascii] [–color verdadero | –256color | –16color | –8color] [–palette {predeterminado,xterm,linuxconsole,solarized,rxvt,tango,gruvbox,gruvboxdark}] [-w ancho] [-o outfile] archivo de entrada

Laboral:

Ejemplo 4: Ejemplos personalizados usando la línea de comando 

El siguiente ejemplo muestra el trabajo con ejemplos personalizados configurando diferentes parámetros posibles. 

Ejemplo 5: Ejemplos personalizados usando código Python. 

Extendiéndose a la parte anterior, esta sección muestra cómo se pueden usar los parámetros personalizados del código para construir diferentes imágenes.

Python3

import climage
  
# converts the image to print in terminal
# with 8 color encoding and palette tango
output = climage.convert('banana.png', is_8color=True, 
                         palette='tango', is_256color=False)
  
# prints output on console.
print(output)

Producción: 

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *