Saltar al contenido

¿Imprimir en una impresora estándar desde Python?

Esta es la contestación más completa que te podemos aportar, pero estúdiala detenidamente y analiza si se puede adaptar a tu proyecto.

Solución:

Esto solo ha sido probado en Windows:

Puedes hacer lo siguiente:

import os

os.startfile("C:/Users/TestFile.txt", "print")

Esto iniciará el archivo, en su abridor predeterminado, con el verbo ‘imprimir’, que se imprimirá en su impresora predeterminada. Solo requiere el os módulo que viene con la biblioteca estándar

Desafortunadamente, no existe una forma estándar de imprimir usando Python en todas las plataformas. Por lo tanto, deberá escribir su propia función de contenedor para imprimir.

Debe detectar el sistema operativo en el que se ejecuta su programa, luego:

Para Linux –

import subprocess
lpr =  subprocess.Popen("/usr/bin/lpr", stdin=subprocess.PIPE)
lpr.stdin.write(your_data_here)

Para Windows: http://timgolden.me.uk/python/win32_how_do_i/print.html

Más recursos:

¿Imprimir documento PDF con el módulo win32print de python?

¿Cómo imprimo en la impresora predeterminada del sistema operativo en Python 3 (plataforma cruzada)?

Para imprimir en cualquier impresora de la red, puede enviar un trabajo de impresión PJL/PCL directamente a una impresora de red en el puerto 9100.

Por favor, eche un vistazo al siguiente enlace que debería darle un buen comienzo:

http://frank.zinepal.com/printing-directly-to-a-network-printer

Además, si hay una forma de llamar a Windows cmd, puede usar FTP para imprimir su página en 9100. El siguiente enlace debe brindarle detalles, he usado este método para impresoras HP pero creo que funcionará para otras impresoras.

http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=bpj06165

Comentarios y calificaciones de la guía

Puedes secundar nuestro quehacer mostrando un comentario o puntuándolo te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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