Apache PDFBox
Java API برای پردازش اسناد PDF
کتابخانه جاوا منبع باز برای ایجاد، چاپ و تقسیم یا ادغام اسناد PDF در برنامه های جاوا.
Apache PDFBox یک کتابخانه منبع باز خالص جاوا برای کار با اسناد PDF است. با استفاده از این کتابخانه، توسعه دهندگان جاوا می توانند برنامه های جاوا را توسعه دهند که اسناد PDF جدید ایجاد می کنند و اسناد PDF موجود را به راحتی دستکاری می کنند. همچنین توسعه دهندگان را قادر می سازد تا محتوا را از اسناد PDF بخوانند و استخراج کنند. علاوه بر این، PDFBox همچنین شامل یک ابزار خط فرمان برای انجام عملیات های مختلف بر روی اسناد PDF با استفاده از فایل Jar موجود است.
فرمت سند قابل حمل (PDF) یک فرمت فایل است که به ارائه داده ها به شیوه ای مستقل از نرم افزار، سخت افزار و سیستم عامل های کاربردی کمک می کند. Apache PDFBox از چندین ویژگی پیشرفته مانند ایجاد، رندر، چاپ، تقسیم، ادغام، تغییر، تأیید و استخراج متن و متا داده فایل های PDF پشتیبانی می کند.
شروع کار با Apache PDFBox
اول از همه، باید آخرین نسخه را از صفحه دانلود PDFBox دانلود کنید. برای ساخت موفق PDFBox باید جاوا 7 یا بالاتر و Maven 3 را نصب کنید. از دستور ساخت زیر استفاده کنید
دستور نصب
mvn clean instal
این دستور منابع جاوا را کامپایل میکند و بهطور پیشفرض، کلاسهای باینری را در بستههای jar بستهبندی میکند.
Java API برای ایجاد و اصلاح اسناد PDF جدید
Apache PDFBox به برنامه نویسان اجازه می دهد تا یک سند PDF جدید را از ابتدا تولید کنند. پس از ایجاد سند، توسعه دهندگان می توانند سند را در محل مورد نظر ذخیره کنند. PDF یکی از رایج ترین فرمت های فایل امروزه است. اسناد PDF با پلتفرم های مختلف سازگار هستند و یک سند را مستقل از سخت افزار، سیستم عامل و نرم افزار کاربردی مورد استفاده برای ایجاد آن نشان می دهند. PDFBox همچنین توسعه دهندگان را برای اصلاح اسناد PDF موجود تسهیل می کند. توسعه دهندگان می توانند صفحات جدید و همچنین متن را به اسناد صفحه موجود اضافه کنند.
ایجاد سند PDF - جاوا
// Create a new PDF document
PDDocument document = new PDDocument();
// Save document
document.save("fileformat.pdf");
// Close document
document.close();
تقسیم و ادغام اسناد PDF با استفاده از کتابخانه جاوا
Apache PDFBox قابلیت ادغام چندین سند PDF را در یک سند PDF فراهم می کند. برای ادغام چندین سند ابتدا باید اسناد PDF موجود را بارگیری کنید و سپس مسیری را برای فایل مقصد تعیین کنید. پس از آن، توسعهدهندگان میتوانند تمام فایلهای PDF منبع را به ترتیبی که میخواهند در فایل PDF ادغام شده نهایی پیدا کنند، اضافه کنند. ما می توانیم سند PDF داده شده را به چندین فایل PDF تقسیم کنیم. این کلاس Splitter برای تقسیم سند PDF داده شده به چندین سند جداگانه دیگر استفاده می شود.
ادغام اسناد PDF - جاوا
// Initialize PDFMergerUtility object
PDFMergerUtility pdfMergerUtility = new PDFMergerUtility();
// Set output file path
pdfMergerUtility.setDestinationFileName("merged.pdf");
// Add source documents
pdfMergerUtility.addSource(new File("document1.pdf"));
pdfMergerUtility.addSource(new File("document2.pdf"));
// Merger documents
pdfMergerUtility.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
افزودن و استخراج تصاویر به اسناد PDF در داخل برنامه های جاوا
Apache PDFBox به توسعه دهندگان جاوا کمک می کند تا تصاویر را در یک سند PDF موجود درج کنند. تصاویر همیشه ارزش واقعی را به قطعه محتوا اضافه می کنند. تصاویر به ما کمک می کنند یاد بگیریم، توجه را جلب کنیم، مفاهیم را توضیح دهیم و الهام بگیریم. PDFBox یک کتابخانه برای درج یک تصویر در یک سند PDF فراهم می کند. این کتابخانه از برنامه جاوا برای درج تصاویر در اسناد PDF استفاده می کند. API همچنین به توسعه دهندگان این امکان را می دهد تا تصاویر را از سند PDF موجود استخراج کرده و روی دیسک محلی ذخیره کنند.
اضافه کردن تصاویر در PDF - جاوا
// Create a new PDF document
PDDocument document = new PDDocument();
// Create a new page
PDPage page = new PDPage();
// Add page
document.addPage(page);
// Initialize PDImageXObject object
PDImageXObject pdImage = PDImageXObject.createFromFile("logo.png",document);
// Initialize PDPageContentStream object
PDPageContentStream contents = new PDPageContentStream(document, page);
// Drawing image
contents.drawImage(pdImage, 70, 250);
// Close contents
contents.close();
// save document
document.save("image.pdf");
چاپ اسناد PDF به روش های مختلف با استفاده از کتابخانه جاوا
Apache PDFBox توسعه دهندگان جاوا را قادر می سازد تا یک سند PDF را با استفاده از API چاپ جاوا استاندارد چاپ کنند. این به توسعه دهندگان اجازه می دهد اسناد PDF را به روش های مختلف چاپ کنند. توسعه دهندگان اکنون می توانند سند را در اندازه واقعی آن چاپ کنند که روش توصیه شده برای چاپ است. از چاپ با گفتگوی پیش نمایش چاپ و همچنین ویژگی های سفارشی پشتیبانی می کند. توسعه دهندگان همچنین می توانند اسناد PDF را با استفاده از اندازه صفحه سفارشی و حاشیه های سفارشی چاپ کنند.
چاپ فایل PDF از طریق Java API
import java.awt.print.PrinterException;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
public class Print {
public static void main(String[] args) throws IOException, PrinterException
{
PDDocument pdf=PDDocument.load("d:\\filename.pdf");
pdf.print();
}
}