পিডিএফবক্স (PDFBox) Java ব্যবহার করে একাধিক পিডিএফ ফাইল মার্জ (Merge) করা খুবই সহজ। এটি PDDocument ক্লাসের মাধ্যমে একাধিক পিডিএফ ফাইলকে এক ফাইলে একত্রিত করতে সাহায্য করে। একাধিক পিডিএফ ফাইল মার্জ করার জন্য PDDocument এর add মেথড ব্যবহার করা হয়।
পিডিএফ মার্জ করার প্রক্রিয়া
একাধিক পিডিএফ ফাইল মার্জ করার জন্য নিম্নলিখিত স্টেপগুলো অনুসরণ করতে হবে:
- PDDocument তৈরি করুন: একটি নতুন পিডিএফ ডকুমেন্ট তৈরি করুন, যা মার্জ করা পিডিএফগুলির জন্য একত্রিত হবে।
- পিডিএফ ফাইল লোড করুন:
PDDocument.load()মেথডের মাধ্যমে প্রতিটি পিডিএফ ফাইল লোড করুন। - পিডিএফ পৃষ্ঠা যোগ করুন: একটি পিডিএফ ডকুমেন্ট থেকে পৃষ্ঠাগুলি অন্য ডকুমেন্টে যোগ করতে
addPage()মেথড ব্যবহার করুন। - ডকুমেন্ট সেভ করুন: একত্রিত ডকুমেন্টটি সেভ করুন।
উদাহরণ: Multiple PDF ফাইল Merge করা
নিম্নলিখিত কোডটি দুটি পিডিএফ ফাইল মার্জ করবে এবং একটি নতুন পিডিএফ ডকুমেন্ট তৈরি করবে:
import org.apache.pdfbox.pdmodel.*;
import java.io.File;
import java.io.IOException;
public class PDFMergeExample {
public static void main(String[] args) {
// নতুন একটি পিডিএফ ডকুমেন্ট তৈরি করুন
PDDocument mergedDocument = new PDDocument();
try {
// প্রথম পিডিএফ ডকুমেন্ট লোড করুন
PDDocument document1 = PDDocument.load(new File("file1.pdf"));
// প্রথম ডকুমেন্টের সমস্ত পৃষ্ঠা মার্জ করা
for (int i = 0; i < document1.getNumberOfPages(); i++) {
mergedDocument.addPage(document1.getPage(i));
}
document1.close();
// দ্বিতীয় পিডিএফ ডকুমেন্ট লোড করুন
PDDocument document2 = PDDocument.load(new File("file2.pdf"));
// দ্বিতীয় ডকুমেন্টের সমস্ত পৃষ্ঠা মার্জ করা
for (int i = 0; i < document2.getNumberOfPages(); i++) {
mergedDocument.addPage(document2.getPage(i));
}
document2.close();
// মার্জ করা ডকুমেন্ট সেভ করুন
mergedDocument.save("merged_output.pdf");
mergedDocument.close();
System.out.println("PDF Files Merged Successfully!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
কোডের ব্যাখ্যা
- PDDocument mergedDocument = new PDDocument();
এটি একটি নতুন পিডিএফ ডকুমেন্ট তৈরি করে, যেখানে মার্জ করা পিডিএফ ফাইলগুলো যোগ করা হবে। - PDDocument document1 = PDDocument.load(new File("file1.pdf"));
এটিfile1.pdfনামক পিডিএফ ফাইলটি লোড করে। - mergedDocument.addPage(document1.getPage(i));
file1.pdfথেকে পৃষ্ঠাগুলো এক এক করে মার্জ করা হচ্ছে। - document1.close();
প্রথম পিডিএফ ডকুমেন্টটি বন্ধ করা হয়, যাতে রিসোর্সগুলি ফ্রি থাকে। - PDDocument document2 = PDDocument.load(new File("file2.pdf"));
এটিfile2.pdfনামক দ্বিতীয় পিডিএফ ফাইলটি লোড করে। - mergedDocument.addPage(document2.getPage(i));
দ্বিতীয় পিডিএফ ফাইলের পৃষ্ঠাগুলি মার্জ করা হচ্ছে। - mergedDocument.save("merged_output.pdf");
এটি মার্জ করা সমস্ত পিডিএফ পৃষ্ঠাসমূহ সেভ করে একটি নতুন পিডিএফ ফাইল তৈরি করে। - mergedDocument.close();
মার্জ করা পিডিএফ ডকুমেন্টটি বন্ধ করা হয়।
একাধিক পিডিএফ ফাইল মার্জ করা
আপনি যদি একাধিক পিডিএফ ফাইল মার্জ করতে চান, তবে উপরোক্ত উদাহরণটি সহজেই একাধিক ফাইলের জন্য এক্সটেন্ড করা যেতে পারে:
File[] pdfFiles = new File[] { new File("file1.pdf"), new File("file2.pdf"), new File("file3.pdf") };
for (File pdfFile : pdfFiles) {
PDDocument document = PDDocument.load(pdfFile);
for (int i = 0; i < document.getNumberOfPages(); i++) {
mergedDocument.addPage(document.getPage(i));
}
document.close();
}
উপসংহার
পিডিএফবক্স (PDFBox) Java ব্যবহার করে একাধিক পিডিএফ ফাইল মার্জ করা সহজ এবং কার্যকর। আপনি PDDocument ক্লাসের addPage() মেথড ব্যবহার করে পিডিএফ ফাইলগুলোর পৃষ্ঠাগুলি একত্রিত করতে পারবেন এবং একত্রিত ফাইলটি একটি নতুন পিডিএফ ডকুমেন্ট হিসেবে সেভ করতে পারবেন। এটি একাধিক পিডিএফ ডকুমেন্টের কন্টেন্ট একত্রিত করার জন্য খুবই উপকারী।