הדפס PDF עם Java באופן פרוגרמטי

הדפסת מסמכי PDF היא לרוב תפקיד מפתח בחברות וארגונים שונים. אתה יכול בקלות להדפיס קובץ PDF באופן תוכנתי באמצעות שפת Java. אתה יכול לעבוד עם Aspose.PDF for Java API על ידי הגדרת התצורה שלו בסביבה שלך. תן לנו לעבור על תרחישים שונים של הדפסת PDF האפשריים ביישומי Java שלך:

הדפס קובץ PDF באמצעות Java

אתה יכול בקלות להדפיס קובץ PDF באמצעות קוד Java על ידי ביצוע השלבים הבאים:

  1. צור אובייקט PdfViewer
  2. טען קובץ PDF קלט
  3. הדפס את קובץ ה-PDF

קטע הקוד שלהלן מראה כיצד להדפיס קבצי PDF באופן תוכנתי באמצעות Java:

//צור אובייקט PdfViewer
PdfViewer viewer = new PdfViewer();
//פתח קובץ PDF קלט
viewer.bindPdf(dataDir + "Test.pdf");
//הדפס מסמך PDF
viewer.printDocument();
//סגור קובץ PDF
viewer.close();

הדפסת מסמכי PDF מרובים באמצעות Java

הדפסת קבצים מרובים, או הדפסה אצווה של קבצי PDF היא תהליך פשוט באמצעות שפת Java. ניתן להדפיס מספר קבצי PDF על ידי ביצוע השלבים הבאים:

  1. אתחול רשימה של סוג מחרוזת
  2. הוסף קבצי PDF מרובים להדפסה
  3. הדפס מסמכי PDF

הקוד הבא מראה כיצד להדפיס קבצי PDF מרובים בשפת Java:

// אתחול רשימה של סוג מחרוזת
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();
}

הדפס דפים ספציפיים או טווח דפים באמצעות Java

ה-API נותן לך שליטה רבה בזמן הדפסת קבצי PDF. אתה יכול לעבוד עם שדות ושיטות שונות תוך כדי הדפסת קבצים, לפי הדרישות שלך. לדוגמה, אם אינך רוצה להדפיס את כל העמודים של קובץ PDF ורק כמה עמודים. זה יכול להיות טווח עמודים רציף כמו מעמוד מספר 3 עד עמוד מספר 7, או שאלו יכולים להיות דפים אקראיים כמו עמוד מספר 1,5 ו-6. אתה יכול לכסות את שני התרחישים עם השלבים הבאים:

  1. אתחול אובייקט PdfViewer
  2. הגדר תכונות להדפסה
  3. צור אובייקטים עבור הגדרות מדפסת ועמודים
  4. ציין אם ברצונך להדפיס את כל העמודים, עמודים ספציפיים או טווח עמודים רציף
  5. הדפס מסמך PDF באמצעות הגדרות המדפסת והעמוד

הקוד הבא מראה כיצד להדפיס דפים ספציפיים או טווח של דפים במסמך PDF עם Java:

// צור אובייקט 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 מאובטח באמצעות Java

לפעמים קבצי PDF מאובטחים או מוצפנים בסיסמאות על מנת להבטיח גישה מורשית לנתונים. אתה יכול לגשת בקלות ולהדפיס את קובץ ה-PDF המאובטח או המוצפן באמצעות קוד Java ולהדפיס את הקובץ לפי הדרישות שלך. עליך לבצע את השלבים הבאים:

  1. טען קובץ קלט PDF מוגן בסיסמה עם הסיסמה
  2. אתחול אובייקט PdfViewer
  3. הדפס את מסמך ה-PDF

הקוד שלהלן מבוסס על השלבים הבאים המסביר כיצד להדפיס את קבצי ה-PDF המאובטחים באמצעות קוד Java:

//טען מסמך 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 באמצעות Java

אתה יכול לעקוב אחר מצב עבודת ההדפסה לאחר שליחת הקובץ לתור ההדפסה של המדפסת. זה מאפשר ליישום שלך להחליט אם ההדפסה הצליחה או לא. מחלקת PdfViewer חושפת את השיטה getPrintStatus שעוזרת לך לבדוק את מצב עבודת ההדפסה. לדוגמה, בעת הדפסת PDF לפורמט XPS, תוכל לקבל את הסטטוס על ידי ביצוע השלבים הבאים:

  1. טען קובץ PDF קלט
  2. הגדר תכונות להדפסה
  3. צור אובייקטים עבור הגדרות מדפסת ועמודים
  4. הגדר את שם המדפסת
  5. הדפס את הפלט לקובץ
  6. בדוק את מצב ההדפסה

הקוד הבא מראה כיצד לבדוק את מצב משימת ההדפסה במהלך הדפסת PDF באמצעות קוד Java:

// צור אובייקט 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 ביישומי Java שלך. אתה יכול לשלב בקלות את התכונות הללו ביישומי האינטרנט שלך, יישומי המסוף או כל סוג אחר של פרויקט שאתה עובד איתו, באמצעות שפת Java. אתה יכול לחקור עוד את ה-API על ידי למידה מAPI references או Product Documentation. ישנם עוד הרבה תרחישים אפשריים הקשורים להדפסת PDF ותוכלו לדון איתנו באופן חופשי דרך פורום תמיכה חינם. נשמח לעזור!

ראה גם