পিডিএফবক্স (PDFBox) ব্যবহার করে পিডিএফ ডকুমেন্টে ফন্ট সাইজ এবং টেক্সটের অ্যালাইনমেন্ট কনফিগার করা বেশ সহজ। আপনি যেকোনো পিডিএফ ডকুমেন্টে টেক্সট সন্নিবেশ করার সময় ফন্ট সাইজ এবং টেক্সটের অ্যালাইনমেন্ট কাস্টমাইজ করতে পারেন। নিচে কিভাবে এটি করা যায়, তা বিস্তারিতভাবে আলোচনা করা হলো।
ফন্ট সাইজ কনফিগার করা
পিডিএফবক্সে ফন্ট সাইজ কনফিগার করার জন্য, আপনি PDPageContentStream ক্লাস ব্যবহার করেন এবং setFont মেথডের মাধ্যমে ফন্ট এবং সাইজ নির্ধারণ করতে পারেন।
কোড উদাহরণ: ফন্ট সাইজ সেট করা
PDDocument document = new PDDocument();
PDPage page = new PDPage();
document.addPage(page);
PDPageContentStream contentStream = new PDPageContentStream(document, page);
contentStream.beginText();
// ফন্ট এবং সাইজ নির্ধারণ
contentStream.setFont(PDType1Font.HELVETICA_BOLD, 16); // 16 পয়েন্ট সাইজ
contentStream.newLineAtOffset(100, 700);
contentStream.showText("Hello, this is 16pt Helvetica Bold!");
contentStream.endText();
contentStream.close();
document.save("fontSizeExample.pdf");
document.close();
উপরের কোডে, setFont মেথডের মাধ্যমে ফন্ট সাইজ 16 পয়েন্ট সেট করা হয়েছে। আপনি এখানে বিভিন্ন ফন্ট সাইজ ব্যবহার করতে পারেন যেমন 12pt, 14pt, 18pt ইত্যাদি।
টেক্সট অ্যালাইনমেন্ট কনফিগার করা
পিডিএফবক্সে টেক্সটের অ্যালাইনমেন্ট নির্ধারণ করতে newLineAtOffset মেথড ব্যবহার করা হয়, যা টেক্সটের অবস্থান (position) কাস্টমাইজ করতে সহায়তা করে। আপনি টেক্সটকে বাম, কেন্দ্র, বা ডানদিকে অ্যালাইন করতে পারেন।
কোড উদাহরণ: টেক্সট অ্যালাইনমেন্ট সেট করা
PDDocument document = new PDDocument();
PDPage page = new PDPage();
document.addPage(page);
PDPageContentStream contentStream = new PDPageContentStream(document, page);
contentStream.beginText();
// ফন্ট এবং সাইজ নির্ধারণ
contentStream.setFont(PDType1Font.HELVETICA_BOLD, 12);
// বামদিকের অ্যালাইনমেন্ট
contentStream.newLineAtOffset(100, 700); // বাম থেকে 100 পয়েন্ট
contentStream.showText("Left Aligned Text");
// কেন্দ্রের অ্যালাইনমেন্ট
contentStream.newLineAtOffset(200, 0); // 200 পয়েন্ট সরে যাবে
contentStream.showText("Center Aligned Text");
// ডানদিকে অ্যালাইনমেন্ট
contentStream.newLineAtOffset(200, 0); // 200 পয়েন্ট সরে যাবে
contentStream.showText("Right Aligned Text");
contentStream.endText();
contentStream.close();
document.save("textAlignmentExample.pdf");
document.close();
এখানে, টেক্সট তিনটি ভিন্ন জায়গায় অ্যালাইন করা হয়েছে:
- বাম (Left): প্রথমে 100 পয়েন্ট সরে গিয়ে টেক্সট দেখানো হয়েছে।
- কেন্দ্র (Center): দ্বিতীয় টেক্সট 200 পয়েন্ট সরে গিয়ে দেখানো হয়েছে।
- ডান (Right): টেক্সটের অবস্থান ডান দিকে স্থানান্তরিত করা হয়েছে।
টেক্সট অ্যালাইনমেন্টের উন্নত কৌশল
যদি আপনি আরো নিখুঁতভাবে টেক্সটের অ্যালাইনমেন্ট কনফিগার করতে চান, যেমন পৃষ্ঠার কেন্দ্র, বাম অথবা ডান প্রান্তে সঠিকভাবে টেক্সট সেট করা, তাহলে আপনাকে পৃষ্ঠা সাইজ বিবেচনা করতে হবে। এই জন্য, পিডিএফ পৃষ্ঠার প্রস্থ (width) ও উচ্চতা (height) জানিয়ে আপনি সঠিক স্থান নির্ধারণ করতে পারবেন।
উদাহরণ: পৃষ্ঠার কেন্দ্রেই টেক্সট অ্যালাইনমেন্ট
PDDocument document = new PDDocument();
PDPage page = new PDPage();
document.addPage(page);
PDPageContentStream contentStream = new PDPageContentStream(document, page);
contentStream.beginText();
// ফন্ট এবং সাইজ নির্ধারণ
contentStream.setFont(PDType1Font.HELVETICA_BOLD, 12);
// পৃষ্ঠা প্রস্থ এবং উচ্চতা জানুন
float pageWidth = page.getMediaBox().getWidth();
float pageHeight = page.getMediaBox().getHeight();
// টেক্সটের অবস্থান পৃষ্ঠা কেন্দ্রের দিকে নিয়ে আসুন
contentStream.newLineAtOffset(pageWidth / 2 - 50, pageHeight / 2); // সেন্টারে আনতে
contentStream.showText("Center Aligned Text!");
contentStream.endText();
contentStream.close();
document.save("centerAlignedText.pdf");
document.close();
এই কোডে, টেক্সটটি পৃষ্ঠার কেন্দ্রস্থলে অবস্থান করবে, কারণ পৃষ্ঠার প্রস্থ এবং উচ্চতা ব্যবহার করে সঠিক অবস্থান নির্ধারণ করা হয়েছে।
ফন্ট সাইজ এবং টেক্সট অ্যালাইনমেন্ট কনফিগার করার মাধ্যমে আপনি আপনার পিডিএফ ডকুমেন্টকে আরও আকর্ষণীয় এবং কার্যকরভাবে কাস্টমাইজ করতে পারেন।
Read more