طباعة PDF إلى طابعة XPS

طباعة ملف PDF على طابعة XPS باستخدام C#

يمكنك طباعة ملف PDF على طابعة XPS، أو أي طابعة رقمية أخرى، باستخدام فئة PdfViewer. للقيام بذلك، قم بإنشاء كائن من فئة PdfViewer وافتح ملف PDF باستخدام الطريقة BindPdf. يمكنك تعيين إعدادات الطباعة المختلفة باستخدام فئات PrinterSettings و PageSettings. كما يجب عليك تعيين خاصية PrinterName إلى الطابعة XPS أو أي طابعة رقمية أخرى لديك.

أخيرًا، استخدم الطريقة PrintDocumentWithSettings لطباعة ملف PDF على طابعة XPS أو طابعة رقمية أخرى. يوضح الجزء التالي من الكود كيفية طباعة ملف PDF على طابعة XPS.

public static void PrintToXpsPrinter()
{
    // إنشاء كائن PdfViewer
    PdfViewer viewer = new PdfViewer();

    // فتح ملف PDF الإدخال
    viewer.BindPdf(_dataDir + "input.pdf");

    // تعيين خصائص الطباعة
    viewer.AutoResize = true;         // طباعة الملف بحجم معدل
    viewer.AutoRotate = true;         // طباعة الملف بدوران معدل
    viewer.PrintPageDialog = false;   // عدم إظهار حوار رقم الصفحة عند الطباعة

    // إنشاء كائنات لإعدادات الطابعة والصفحة وPrintDocument
    System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings();
    System.Drawing.Printing.PageSettings pgs = new System.Drawing.Printing.PageSettings();

    // تعيين اسم طابعة XPS/PDF
    ps.PrinterName = "Microsoft XPS Document Writer";
    // أو تعيين الطابعة PDF
    // Ps.PrinterName = "Adobe PDF";

    // تعيين حجم الصفحة (إذا لزم الأمر)
    pgs.PaperSize = new System.Drawing.Printing.PaperSize("A4", 827, 1169);

    // تعيين هوامش الصفحة (إذا لزم الأمر)
    pgs.Margins = new System.Drawing.Printing.Margins(0, 0, 0, 0);

    // طباعة المستند باستخدام إعدادات الطابعة والصفحة
    viewer.PrintDocumentWithSettings(pgs, ps);

    // إغلاق ملف PDF بعد الطباعة
    viewer.Close();
}