Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে column layout তৈরি এবং কাস্টমাইজ করা সম্ভব। কলাম ব্যবহার করে আপনি ডকুমেন্টের কন্টেন্টকে বিভিন্ন সেগমেন্টে বিভক্ত করতে পারেন, যেমন পত্রিকা বা সংবাদপত্রের মতো সেগমেন্টেশন। এটি বিশেষভাবে দীর্ঘ টেক্সট কন্টেন্ট বা ফর্ম্যাটেড ডকুমেন্ট তৈরি করার জন্য উপকারী।
এখানে আমরা দেখবো কিভাবে columns তৈরি করা যায় এবং layout কাস্টমাইজ করা যায়।
Word ডকুমেন্টে কলাম ব্যবহারের জন্য সাধারণত section breaks ব্যবহার করা হয়, যা নির্দিষ্ট অংশে একাধিক কলাম নির্ধারণ করে।
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFSection;
import java.io.FileOutputStream;
import java.io.IOException;
public class ColumnLayoutExample {
public static void main(String[] args) throws IOException {
// একটি নতুন Word ডকুমেন্ট তৈরি করা
XWPFDocument document = new XWPFDocument();
// একটি প্যারাগ্রাফ যোগ করা
XWPFParagraph paragraph1 = document.createParagraph();
XWPFRun run1 = paragraph1.createRun();
run1.setText("এটি কলাম লেআউটের উদাহরণ।");
// সেকশন ব্রেক ব্যবহার করে দুটি কলাম তৈরি করা
XWPFSection section = document.createSection();
section.getSectPr().getCols().setNumColumns(2); // কলাম সংখ্যা সেট করা
// প্রথম কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph2 = section.createParagraph();
XWPFRun run2 = paragraph2.createRun();
run2.setText("প্রথম কলামে কিছু কন্টেন্ট।");
// সেকেন্ড কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph3 = section.createParagraph();
XWPFRun run3 = paragraph3.createRun();
run3.setText("দ্বিতীয় কলামে কিছু কন্টেন্ট।");
// Word ডকুমেন্ট সেভ করা
try (FileOutputStream out = new FileOutputStream("ColumnLayoutExample.docx")) {
document.write(out);
}
System.out.println("Column Layout created successfully!");
}
}
কলাম লেআউটের মধ্যে আপনি column width, spacing, এবং line spacing কাস্টমাইজ করতে পারেন। এই কাস্টমাইজেশনগুলি কলামের উপস্থিতি এবং ব্যবহারিক প্রভাবকে উন্নত করতে সহায়তা করবে।
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFSection;
import java.io.FileOutputStream;
import java.io.IOException;
public class CustomColumnLayoutExample {
public static void main(String[] args) throws IOException {
// একটি নতুন Word ডকুমেন্ট তৈরি করা
XWPFDocument document = new XWPFDocument();
// সেকশন ব্রেক ব্যবহার করে দুটি কলাম তৈরি করা
XWPFSection section = document.createSection();
section.getSectPr().getCols().setNumColumns(2); // কলাম সংখ্যা সেট করা
section.getSectPr().getCols().setColumnWidth(3000); // কলামের প্রস্থ কাস্টমাইজ করা (পয়েন্টে)
// কলামগুলির মধ্যে স্পেসিং কাস্টমাইজ করা
section.getSectPr().getCols().setColumnSpacing(500); // কলামের মধ্যে স্পেসিং কাস্টমাইজ করা
// প্রথম কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph1 = section.createParagraph();
XWPFRun run1 = paragraph1.createRun();
run1.setText("প্রথম কলামের কন্টেন্ট।");
// সেকেন্ড কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph2 = section.createParagraph();
XWPFRun run2 = paragraph2.createRun();
run2.setText("দ্বিতীয় কলামের কন্টেন্ট।");
// Word ডকুমেন্ট সেভ করা
try (FileOutputStream out = new FileOutputStream("CustomColumnLayoutExample.docx")) {
document.write(out);
}
System.out.println("Custom Column Layout with width and spacing created successfully!");
}
}
কলামের মধ্যে বিভিন্ন ধরনের কন্টেন্ট স্টাইল যেমন bold, italic, এবং underline ব্যবহার করে কন্টেন্টের বিভিন্ন বিভাগ তৈরি করা সম্ভব। কলামের মধ্যে ইনডেন্টেশন এবং ফন্ট সাইজ কাস্টমাইজ করাও করা যেতে পারে।
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFSection;
import java.io.FileOutputStream;
import java.io.IOException;
public class StyledColumnLayoutExample {
public static void main(String[] args) throws IOException {
// একটি নতুন Word ডকুমেন্ট তৈরি করা
XWPFDocument document = new XWPFDocument();
// সেকশন ব্রেক ব্যবহার করে দুটি কলাম তৈরি করা
XWPFSection section = document.createSection();
section.getSectPr().getCols().setNumColumns(2); // কলাম সংখ্যা সেট করা
// প্রথম কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph1 = section.createParagraph();
XWPFRun run1 = paragraph1.createRun();
run1.setText("প্রথম কলামের কন্টেন্ট, ফন্ট সাইজ ১২ এবং বোল্ড।");
run1.setFontSize(12);
run1.setBold(true);
// সেকেন্ড কলামে কন্টেন্ট যোগ করা
XWPFParagraph paragraph2 = section.createParagraph();
XWPFRun run2 = paragraph2.createRun();
run2.setText("দ্বিতীয় কলামে কন্টেন্ট, ইটালিক এবং আন্ডারলাইন সহ।");
run2.setItalic(true);
run2.setUnderline(true);
// Word ডকুমেন্ট সেভ করা
try (FileOutputStream out = new FileOutputStream("StyledColumnLayoutExample.docx")) {
document.write(out);
}
System.out.println("Styled Column Layout created successfully!");
}
}
Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে column layout তৈরি করা সম্ভব এবং আপনি columns এর সংখ্যা, প্রস্থ, স্পেসিং কাস্টমাইজ করতে পারেন। Multiple columns এর মধ্যে বিভিন্ন content styles যেমন bold, italic, এবং underline যোগ করা যায়, যাতে কলামের মধ্যে ভিন্ন ভিন্ন ফরম্যাটিং করতে পারেন। কলাম লেআউট ব্যবহারের মাধ্যমে আপনি দীর্ঘ ডকুমেন্টগুলোকে আরো পড়তে সুবিধাজনক এবং visually appealing বানাতে পারবেন।
common.read_more