Impression PDF sur une imprimante XPS
Contents
[
Hide
]
Imprimer un PDF sur une imprimante XPS en C#
Vous pouvez imprimer un fichier PDF sur une imprimante XPS, ou sur une autre imprimante logicielle, en utilisant la classe PdfViewer. Pour ce faire, créez un objet de la classe PdfViewer et ouvrez le fichier PDF en utilisant la méthode BindPdf. Vous pouvez définir différents paramètres d’impression à l’aide des classes PrinterSettings et PageSettings. Vous devez également définir la propriété PrinterName sur l’imprimante XPS ou autre imprimante logicielle que vous avez installée.
Enfin, utilisez la méthode PrintDocumentWithSettings pour imprimer le PDF sur l’imprimante XPS ou autre imprimante logicielle. Le fragment de code suivant vous montre comment imprimer le fichier PDF sur une imprimante XPS.
public static void PrintToXpsPrinter()
{
// Créer l'objet PdfViewer
PdfViewer viewer = new PdfViewer();
// Ouvrir le fichier PDF d'entrée
viewer.BindPdf(_dataDir + "input.pdf");
// Définir les attributs pour l'impression
viewer.AutoResize = true; // Imprimer le fichier avec une taille ajustée
viewer.AutoRotate = true; // Imprimer le fichier avec une rotation ajustée
viewer.PrintPageDialog = false; // Ne pas produire de dialogue de numéro de page lors de l'impression
// Créer des objets pour les paramètres de l'imprimante et de la page et PrintDocument
System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings();
System.Drawing.Printing.PageSettings pgs = new System.Drawing.Printing.PageSettings();
// Définir le nom de l'imprimante XPS/PDF
ps.PrinterName = "Microsoft XPS Document Writer";
// Ou définir l'imprimante PDF
// Ps.PrinterName = "Adobe PDF";
// Définir la taille de la page (si nécessaire)
pgs.PaperSize = new System.Drawing.Printing.PaperSize("A4", 827, 1169);
// Définir les marges de la page (si nécessaire)
pgs.Margins = new System.Drawing.Printing.Margins(0, 0, 0, 0);
// Imprimer le document en utilisant les paramètres de l'imprimante et de la page
viewer.PrintDocumentWithSettings(pgs, ps);
// Fermer le fichier PDF après l'impression
viewer.Close();
}