چاپ PDF با جاوا به صورت برنامه ریزی شده

چاپ اسناد PDF اغلب یک کار کلیدی در شرکت ها و سازمان های مختلف است. با استفاده از زبان جاوا می توانید به راحتی یک فایل PDF را به صورت برنامه نویسی چاپ کنید. شما می توانید با Aspose.PDF for Java API با پیکربندی آن در محیط خود کار کنید. اجازه دهید سناریوهای مختلف چاپ PDF را که در برنامه های جاوا شما امکان پذیر است بررسی کنیم:

چاپ فایل PDF با استفاده از جاوا

با دنبال کردن مراحل زیر می توانید به راحتی یک فایل PDF را با استفاده از کد جاوا چاپ کنید:

  1. شیء PdfViewer ایجاد کنید
  2. فایل PDF ورودی را بارگیری کنید
  3. فایل PDF را چاپ کنید

قطعه کد زیر نحوه چاپ فایل های PDF را به صورت برنامه ریزی شده با استفاده از جاوا نشان می دهد:

//شیء PdfViewer را ایجاد کنید
PdfViewer viewer = new PdfViewer();
//فایل PDF ورودی را باز کنید
viewer.bindPdf(dataDir + "Test.pdf");
//چاپ سند PDF
viewer.printDocument();
//فایل PDF را ببندید
viewer.close();

چاپ چندین سند PDF با استفاده از جاوا

چاپ چندین فایل یا چاپ دسته ای فایل های PDF یک فرآیند ساده با استفاده از زبان جاوا است. با انجام مراحل زیر می توانید تعدادی فایل PDF را چاپ کنید:

  1. فهرستی از نوع رشته را راه اندازی کنید
  2. چندین فایل PDF را به چاپ اضافه کنید
  3. چاپ اسناد PDF

کد زیر نحوه چاپ چندین فایل PDF را با استفاده از زبان جاوا نشان می دهد:

// فهرستی از نوع رشته را راه اندازی کنید
List<String> files = new ArrayList<>();

// چندین فایل را برای چاپ اضافه کنید
files.add(dataDir + "First.pdf");
files.add(dataDir + "Second.pdf");

// هر فایل را برای چاپ پردازش کنید
for (String file : files)
{
    //شیء PdfViewer ایجاد کنید
    PdfViewer viewer = new PdfViewer();
    //فایل PDF ورودی را باز کنید
    viewer.bindPdf(file);
    //چاپ سند PDF
    viewer.printDocument();
    //فایل PDF را ببندید
    viewer.close();
}

صفحات خاص یا محدوده صفحات را با استفاده از جاوا چاپ کنید

API کنترل زیادی در هنگام چاپ فایل های PDF به شما می دهد. شما می توانید با زمینه ها و روش های مختلف در حین چاپ فایل ها، بنا به نیاز خود کار کنید. به عنوان مثال، اگر نمی خواهید تمام صفحات یک فایل PDF و فقط چند صفحه را چاپ کنید. این می تواند محدوده صفحات پیوسته ای مانند از شماره صفحه 3 تا شماره صفحه 7 باشد، یا می تواند صفحات تصادفی مانند شماره صفحه 1،5 و 6 باشد. می توانید هر دو سناریو را با مراحل زیر پوشش دهید:

  1. شیء PdfViewer را مقداردهی کنید
  2. تنظیم ویژگی ها برای چاپ
  3. ایجاد اشیاء برای تنظیمات چاپگر و صفحه
  4. مشخص کنید که می خواهید همه صفحات، صفحات خاص یا یک محدوده صفحه پیوسته را چاپ کنید
  5. سند PDF را با استفاده از تنظیمات چاپگر و صفحه چاپ کنید

کد زیر نحوه چاپ صفحات خاص یا طیف وسیعی از صفحات در یک سند PDF را با جاوا نشان می دهد:

// شیء PdfViewer ایجاد کنید
PdfViewer viewer = new PdfViewer();
// فایل PDF ورودی را باز کنید
viewer.bindPdf(dataDir + "test.pdf");
// تنظیم ویژگی ها برای چاپ
viewer.setAutoResize(true); // Print the file with adjusted size
viewer.setAutoRotate(true); // Print the file with adjusted rotation
viewer.setPrintPageDialog(false); // Do not produce the page number dialog when printing

// ایجاد اشیاء برای تنظیمات چاپگر و صفحه و PrintDocument
PrintPageSettings pgs = new PrintPageSettings();
PdfPrinterSettings ps = new PdfPrinterSettings();
// نام چاپگر را تنظیم کنید
ps.setPrinterName("Microsoft Print to PDF");

// ps.setPrintRange(2); // 0 = همه صفحات; 1 = انتخاب؛ 2 = چند صفحه
// ps.setFromPage(1);
// ps.setToPage(2);


ps.setPrintRange(1); // 0 = all pages; 1 = selection; 2 = some pages
ps.setSelectedPages(new int[]{1, 3, 5});


// چاپ سند با استفاده از تنظیمات چاپگر و صفحه
viewer.printDocumentWithSettings(pgs, ps);

PDF امن را با استفاده از جاوا چاپ کنید

گاهی اوقات برای اطمینان از دسترسی مجاز به داده ها، فایل های PDF با رمزهای عبور ایمن یا رمزگذاری می شوند. شما می توانید به راحتی با استفاده از کد جاوا به فایل PDF ایمن یا رمزگذاری شده دسترسی پیدا کرده و آن را چاپ کنید و فایل را مطابق با نیاز خود چاپ کنید. شما باید مراحل زیر را دنبال کنید:

  1. فایل ورودی PDF محافظت شده با رمز عبور را با رمز عبور بارگیری کنید
  2. شیء PdfViewer را مقداردهی کنید
  3. سند PDF را چاپ کنید

کد زیر بر اساس این مراحل است که نحوه چاپ فایل های PDF ایمن با استفاده از کد جاوا را توضیح می دهد:

//با مشخص کردن رمز عبور کاربر یا مالک، سند PDF ایمن را بارگیری کنید
Document document = new Document(dataDir + "Password.pdf" , "userORowner");
//شیء PdfViewer را ایجاد کنید
PdfViewer viewer = new PdfViewer();
//فایل PDF ورودی را باز کنید
viewer.bindPdf(document);
//چاپ سند PDF
viewer.printDocument();
//فایل PDF را ببندید
viewer.close();

هنگام چاپ PDF با استفاده از جاوا، وضعیت کار چاپ را بررسی کنید

پس از ارسال فایل به صف چاپ چاپگر، می توانید وضعیت کار چاپ را زیر نظر داشته باشید. این به برنامه شما اجازه می دهد تصمیم بگیرد که آیا چاپ موفق بوده است یا خیر. کلاس PdfViewer روش getPrintStatus را نشان می دهد که به شما کمک می کند وضعیت کار چاپ را بررسی کنید. به عنوان مثال، هنگام چاپ یک PDF به فرمت XPS، می توانید با دنبال کردن مراحل زیر وضعیت را دریافت کنید:

  1. فایل PDF ورودی را بارگیری کنید
  2. تنظیم ویژگی ها برای چاپ
  3. ایجاد اشیاء برای تنظیمات چاپگر و صفحه
  4. نام چاپگر را تنظیم کنید
  5. خروجی را در فایل چاپ کنید
  6. وضعیت چاپ را بررسی کنید

کد زیر نحوه بررسی وضعیت کار چاپ در حین چاپ PDF با استفاده از کد جاوا را نشان می دهد:

// شیء PdfViewer ایجاد کنید
PdfViewer viewer = new PdfViewer();
// فایل PDF ورودی را باز کنید
viewer.bindPdf(dataDir + "test.pdf");
// تنظیم ویژگی ها برای چاپ
viewer.setAutoResize(true); // Print the file with adjusted size
viewer.setAutoRotate(true); // Print the file with adjusted rotation
viewer.setPrintPageDialog(false); // Do not produce the page number dialog when printing

// ایجاد اشیاء برای تنظیمات چاپگر و صفحه و PrintDocument
PrintPageSettings pgs = new PrintPageSettings();
PdfPrinterSettings ps = new PdfPrinterSettings();

// نام چاپگر را تنظیم کنید
ps.setPrinterName("Microsoft Print to PDF");


// نام چاپی حاصل
ps.setPrintFileName(dataDir + "ResultantPrintout.xps");

// خروجی را در فایل چاپ کنید
ps.setPrintToFile(true);

// سند را با تنظیمات مشخص شده در بالا چاپ کنید
viewer.printDocumentWithSettings(pgs, ps);

// وضعیت چاپ را بررسی کنید
if (viewer.getPrintStatus() != null)
{
    // استثنا انداخته شد
    Exception ex = (Exception)viewer.getPrintStatus();
    if (ex != null)
    {
        // دریافت پیام استثنا
    }
}
else
{
    // هیچ خطایی پیدا نشد. کار چاپ با موفقیت به پایان رسید
    System.out.println("printing completed without any issue..");
}

نتیجه

ما سناریوهای مختلف مربوط به چاپ فایل های PDF را در برنامه های جاوا شما بررسی کرده ایم. شما به راحتی می توانید با استفاده از زبان جاوا، این ویژگی ها را در برنامه های کاربردی وب، برنامه های کنسول یا هر نوع پروژه دیگری که با آن کار می کنید، ادغام کنید. می‌توانید با یادگیری از مرجع API یا Product Documentation API را بیشتر کاوش کنید. سناریوهای احتمالی بسیار بیشتری در رابطه با چاپ PDF وجود دارد و شما می توانید آزادانه از طریق تالار گفتمان پشتیبانی رایگان با ما صحبت کنید. ما خوشحال خواهیم شد که کمک کنیم!

همچنین ببینید