J'essaye d'imprimer un PDF avec Python, sans ouvrir l'application PDF Viewer (Adobe, Foxit etc.). J'ai aussi besoin de savoir quand l'impression est terminée (pour supprimer le fichier).Impression en mode silencieux d'un PDF en Python
Here Je trouve cette mise en œuvre:
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()
Mais il jette cette exception à la ligne ConnectTo
:
dde.error: ConnectTo failed
Quelqu'un sait comment le résoudre? Ou a une solution différente pour l'impression silencieuse? Ou à la liste peut donner un lien vers une référence pour ConnectTo
? Pourrait ne rien trouver sur le web à ce sujet.
Travailler avec: Python 2.7, Windows 7, Acrobat Reader 10.0
GRAND !! J'ai résolu ce problème qui m'a tourmenté pendant des jours. J'ajoute qu'il est nécessaire d'installer à la fois GhostScript ("back-end", téléchargeable depuis http://pages.cs.wisc.edu/~ghost/) et GSView ("front-end", qui inclut GSView et GSPrint, téléchargeable) du premier lien de codeape) – bluish
Oui - la chaîne d'outils Ghostscript est le chemin à suivre ici. Il est à noter que presque toutes les solutions d'impression pour Linux et autres Unix utilisent de nos jours les programmes GS d'une manière ou d'une autre. – jsbueno
Merci pour cela. J'ai imprimé mon fichier txt avec des séquences d'échappement dans l'imprimante pcl made, je l'ai converti en pdf et imprimé en silence avec ghostscript sur une imprimante non-PCL :) –