পিডিএফবক্স (PDFBox) Java লাইব্রেরি ব্যবহার করে পিডিএফ ডকুমেন্টে PNG (Portable Network Graphics) এবং JPEG (Joint Photographic Experts Group) ফরম্যাটের ইমেজ যোগ করা সম্ভব। এটি পিডিএফ ডকুমেন্টে ইমেজ যোগ করার জন্য একটি খুবই শক্তিশালী এবং কার্যকরী টুলসেট প্রদান করে।
ইমেজ যোগ করার প্রক্রিয়া
পিডিএফ ডকুমেন্টে ইমেজ যোগ করার জন্য প্রথমে সেই ইমেজটি লোড করতে হবে, তারপর সেই ইমেজটিকে পিডিএফ পৃষ্ঠায় যোগ করতে হবে। পিডিএফবক্সে PNG এবং JPEG ফরম্যাটের ইমেজ যোগ করতে নিচের কোড ব্যবহার করা যেতে পারে।
PNG এবং JPEG ইমেজ যোগ করার উদাহরণ
import org.apache.pdfbox.pdmodel.*;
import org.apache.pdfbox.pdmodel.common.PDRectangle;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.PDImageXObject;
import java.io.File;
import java.io.IOException;
public class PDFWithImage {
public static void main(String[] args) throws IOException {
// পিডিএফ ডকুমেন্ট তৈরি
PDDocument document = new PDDocument();
PDPage page = new PDPage(PDRectangle.A4);
document.addPage(page);
// PNG বা JPEG ইমেজ লোড করা
PDImageXObject image = PDImageXObject.createFromFile("image.png", document); // অথবা "image.jpg" ব্যবহার করুন
// পিডিএফ পৃষ্ঠায় ইমেজ যোগ করা
PDPageContentStream contentStream = new PDPageContentStream(document, page);
contentStream.drawImage(image, 100, 500); // (x, y) অবস্থান
contentStream.close();
// পিডিএফ ফাইল সেভ করা
document.save("output_with_image.pdf");
document.close();
}
}
কোড ব্যাখ্যা
- PDDocument: এটি একটি পিডিএফ ডকুমেন্ট অবজেক্ট তৈরি করে।
- PDPage: নতুন একটি পিডিএফ পৃষ্ঠা তৈরি করে। এখানে
PDRectangle.A4পৃষ্ঠা সাইজ হিসেবে ব্যবহার করা হয়েছে। - PDImageXObject.createFromFile(): এটি ইমেজ ফাইল (PNG বা JPEG) লোড করতে ব্যবহৃত হয়।
- PDPageContentStream.drawImage(): এই ফাংশনটি পিডিএফ পৃষ্ঠায় নির্দিষ্ট অবস্থানে ইমেজ যোগ করতে ব্যবহার হয়। এখানে
100, 500হল ইমেজের অবস্থান (x, y) কনভিনিয়েন্ট কোরডিনেট। - document.save(): এটি পিডিএফ ফাইলটিকে সেভ করে নির্দিষ্ট নামের ফাইল হিসেবে।
গুরুত্বপূর্ণ বিষয়
- ইমেজ ফরম্যাট: পিডিএফবক্স PNG এবং JPEG উভয় ফরম্যাটের ইমেজ সমর্থন করে। তবে ইমেজের ফাইলের পাথ সঠিকভাবে দেওয়া জরুরি।
- ইমেজ পজিশন:
drawImage()ফাংশনের মাধ্যমে ইমেজের অবস্থান (x, y) নির্ধারণ করা হয়। ইমেজের সাইজ এবং অবস্থান পিডিএফ পৃষ্ঠায় ইচ্ছেমতো কাস্টমাইজ করা যেতে পারে।
পিডিএফবক্সের মাধ্যমে সহজেই পিডিএফ ডকুমেন্টে PNG এবং JPEG ফরম্যাটের ইমেজ যোগ করা যায়, যা ডকুমেন্টকে আরো আকর্ষণীয় এবং তথ্যবহুল করে তোলে।
Read more