proyectos ejemplos python windows pdf printing silent

ejemplos - Impresión silenciosa de un PDF en Python



django (1)

Intento imprimir un PDF con Python, sin abrir la aplicación del visor de PDF (Adobe, Foxit, etc.). También necesito saber cuándo finalizó la impresión (para eliminar el archivo).

Aquí encontré esta implementación :

import win32ui, dde, os.path, time from win32api import FindExecutable from os import spawnl, P_NOWAIT ... pd = "C://temp//test.pdf" pdbits = os.path.split(pd) readerexe = FindExecutable(pdbits[1],pdbits[0]) spawnl(P_NOWAIT,readerexe[1],"DUMMY") #I added "DUMMY" to avoid a weird error time.sleep(2) s = dde.CreateServer() s.Create('''') c = dde.CreateConversation(s) c.ConnectTo(''acroview'', ''control'') c.Exec(''[FilePrintSilent("%s")]'' % (pd,)) s.Destroy()

Pero arroja esta excepción en la línea ConnectTo :

dde.error: ConnectTo failed

Alguien sabe cómo resolverlo? ¿O tiene una solución diferente para la impresión silenciosa? ¿O en la lista puede dar un enlace a una referencia para ConnectTo ? No pudo encontrar nada en la web al respecto.

Trabajando con: Python 2.7, Windows 7, Acrobat Reader 10.0


Sugiero que instales GSView y GSPrint y que gsprint.exe en gsprint.exe para imprimir el pdf.

p = subprocess.Popen([r"p:/ath/to/gsprint.exe", "test.pdf"], stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = p.communicate() print stdout print stderr

Lo he usado en una solución de impresión de etiquetas industriales, funciona muy bien.

Cuando sale el programa gsprint.exe (es decir, después de la llamada para communicate ), puede eliminar el archivo pdf.