Imprimer le PDF à partir de la ligne de commande / Imprimante PDF
Vous pouvez imprimer un fichier PDF à partir de la ligne de commande en utilisant l'une des techniques mentionnées dans cet article.
PDF Command Line Tool
Dans le l'imprimante PDF, vous trouverez un programme en ligne de commande appelé pdfcmd.exe
. Avec cet outil, vous pouvez, entre autres, imprimer votre fichier PDF sur une imprimante Windows. Il peut être imprimé sur une imprimante physique ou une autre imprimante virtuelle.
PDFCMD command="printpdf" Additional parameters for printing PDF documents ------------------------------------------------ input File name of PDF document to print. pdfprinter (optional) Name of PDF printer used for the operation. printer (optional) Name of the printer that should receive the print job. firstpage (optional) First page to print. Default is the first page. lastpage (optional) Last page to print. Default is the last page. scaletofit (optional) Scale output to fit (yes|no). Default is yes. bpp (optional) Bits per pixel. Valid values are 1, 4, 8, 24 (default). docname (optional) Document name in printer queue. maxdpi (optional) Maximum DPI resolution to print. timeout (optional) Maximum timeout in seconds for the merge to finish. The default is 60 seconds. Example: PDFCMD command=printpdf input="C:\Temp\A.pdf"
Un avantage de cet outil est qu'il ne dépend pas de l'installation ou non d'une visionneuse PDF sur le périphérique sur lequel le fichier PDF est imprimé.
L'outil est le mieux adapté pour envoyer un fichier PDF vers une imprimante physique car le fichier PDF est envoyé à l'imprimante sous forme de bitmap. Cependant, cela signifie également qu'il ne contient pas les informations vectorielles stockées dans un fichier PDF normal. Si vous souhaitez créer un nouveau fichier PDF à partir du travail d'impression, vous remarquerez qu'il est pixellisé lorsque vous zoomez sur la vue PDF.
L'utilisation de cette option pour imprimer le fichier PDF à partir d'une ligne de commande est logique si vous pensez que la qualité de sortie est acceptable.
SumatraPDF Reader
Avec cette approche, vous pouvez utiliser le lecteur SumatraPDF gratuit pour imprimer le fichier PDF. Le lecteur SumatraPDF peut imprimer un PDF à partir de la ligne de commande .
L'avantage d'utiliser cette méthode par rapport à ce qui précède avec l'outil pdfcmd
est que les informations vectorielles sont préservées. Si vous imprimez le fichier PDF sur un autre document PDF ou XPS, la qualité peut être meilleure.
1) Printer API: PrintFile Methode
La méthode PrintFile de l'API demande au système d'exploitation d'imprimer le fichier sur une imprimante spécifique. Il utilise une fonction du système d'exploitation appelée le verbe printto .
Les verbes sont des actions du système d'exploitation que Windows peut effectuer pour un type de fichier. Différents programmes s'enregistrent avec différents verbes ou pour différents types de fichiers qu'ils prennent en charge. Par exemple, le verbe printto des fichiers DOC et DOCX est généralement traité par Microsoft Word.
Si aucun verbe printto n'est enregistré pour les fichiers PDF, cette méthode ne peut pas être utilisée pour imprimer des fichiers PDF. Il est recommandé d'installer le lecteur SumatraPDF (version installateur) pour le verbe printto des fichiers PDF et d'associer le lecteur SumatraPDF aux fichiers PDF.
Le script VB suivant montre comment l'édition COM de l'API peut être utilisée avec cette méthode.
Rem -- Create the COM helper object. set util = CreateObject("pdf7.PdfUtil") Rem -- Print the file to a specific printer util.PrintFile "C:\Test Page.pdf", "7-PDF Printer"
2) Printer API: PrintPdf Methode
Vous pouvez également utiliser la méthode PrintPdf pour imprimer des fichiers PDF. Il s'agit de l'équivalent API de l' pdfcmd
ligne de commande pdfcmd
présenté ci-dessus.
Le script VB suivant montre comment l'édition COM de l'API peut être utilisée avec cette méthode.
Rem -- Create the COM helper object. set util = CreateObject("pdf7.PdfUtil") Rem -- Print the file to a specific printer util.PrintPdf "C:\Test Page.pdf", "specific", "7-PDF Printer", "7-PDF Printer", False, 24, "Print PDF Example", 300, True, 1, 0, 10000