paquetes - printer python
Imprimir en una impresora estándar de Python? (4)
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.
Necesita 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)?
¿Hay una forma razonablemente estándar y multiplataforma de imprimir texto (o incluso PS / PDF) en la impresora definida por el sistema?
Asumiendo CPython aquí, no es algo inteligente como usar Jython y la API de impresión de Java .
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 abrelatas predeterminado, con el verbo ''imprimir'', que se imprimirá en su impresora predeterminada. Solo requiere el módulo os
que viene con la biblioteca estándar.
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 dar un buen comienzo:
http://frank.zinepal.com/printing-directly-to-a-network-printer
Además, si hay una manera de llamar a Windows cmd, puede usar FTP para imprimir su página en 9100. A continuación, el enlace debe darle 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
Puedes probar la biblioteca wx. Es una biblioteca de UI multiplataforma. Aquí puede encontrar el tutorial de impresión: http://wiki.wxpython.org/Printing