Skip to content

$printer.printPdf

Description

Envoie un PDF pour impression sur l'imprimante indiquée

Syntaxe

$printer.printPdf( printerName , pdf [ , options ] )

Paramètres

printerName string
Nom de la policy à vérifier
pdf file / string
Fichier ou chemin du fichier à analyser. Le paramètre peut être du type file ou string.
options map

Map d'options d'impression. Les options supportées sont:

pageWidth number
Largeur de page en millimètres
pageHeight number
Hauteur de page en millimètres
pageOrientationstring
Orientation de page. Les orientations reconnues sont portrait, landscape et reverse_landscape.
scalingstring

Mode de scaling à appliquer. Les modes reconnus sont shrinkToFit, scaleToFit, stretchToFit, actualSize.

La valeur par défaut est shrinkToFit.

showPageBorder boolean
Flag true/false indiquant s'il faut imprimer les bordures. Par défaut le flag est false.
dpi number

Niveau de résolution à utiliser pour la rasterization. La valeur attendue est une valeur de type float. Il est possible en outre de spécifier deux valeurs particulières:

  • 0 : indique de ne pas effectuer de rasterization
  • -1 : indique d'utiliser le DPI de l'imprimante

La valeur par défaut est 0.

center boolean
Flag true/false indiquant de centrer le contenu sur la page. Par défaut le flag est true. Si désactiver, le contenu est imprimé sur le sommet du bord gauche de la page.

Retour

Retourne true si l'impression a pu être effectuée sans erreur, sinon false.

Exemple

Exemple d'impression d'étiquettes et envoi sur une imprimante connectée au serveur.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
var pdf = $pdf.generate(
    `<?xml version="1.0" encoding="UTF-8"?>
     <xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                                 xmlns:fo="http://www.w3.org/1999/XSL/Format" exclude-result-prefixes="fo">
         <xsl:output method="xml" version="1.0" omit-xml-declaration="no" indent="yes"/>

         <xsl:template match="/">
             <fo:root font-family="Segoe UI, Helvetica, Arial, sans-serif">
                 <fo:layout-master-set>
                     <fo:simple-page-master master-name="label-62x29" page-width="62mm" page-height="29mm" margin="2mm">
                         <fo:region-body margin="0mm"/>
                     </fo:simple-page-master>
                 </fo:layout-master-set>

                 <fo:page-sequence master-reference="label-62x29">
                     <fo:flow flow-name="xsl-region-body">
                         <fo:block font-weight="bold" font-size="14pt">Étiquette N°1</fo:block>
                         <fo:block>Contenu du premier test</fo:block>
                     </fo:flow>
                 </fo:page-sequence>

                 <fo:page-sequence master-reference="label-62x29">
                     <fo:flow flow-name="xsl-region-body">
                         <fo:block font-weight="bold" font-size="14pt">Étiquette N°2</fo:block>
                         <fo:block>Contenu du deuxième test</fo:block>
                     </fo:flow>
                 </fo:page-sequence>
             </fo:root>
         </xsl:template>
     </xsl:stylesheet>`::T);

$logger.info($printer.printPdf("QL820NWB", pdf, {
    pageWidth: 62,
    pageHeight: 29
}));