Column Layout ব্যবস্থাপনা

Java Technologies - অ্যাপাচি পিওআই (ওয়ার্ড) পেজ লেআউট এবং মার্জিন কনফিগারেশন |
139
139

Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে column layout তৈরি এবং কাস্টমাইজ করা সম্ভব। কলাম ব্যবহার করে আপনি ডকুমেন্টের কন্টেন্টকে বিভিন্ন সেগমেন্টে বিভক্ত করতে পারেন, যেমন পত্রিকা বা সংবাদপত্রের মতো সেগমেন্টেশন। এটি বিশেষভাবে দীর্ঘ টেক্সট কন্টেন্ট বা ফর্ম্যাটেড ডকুমেন্ট তৈরি করার জন্য উপকারী।

এখানে আমরা দেখবো কিভাবে columns তৈরি করা যায় এবং layout কাস্টমাইজ করা যায়।


১. Column 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!");
    }
}

কোড ব্যাখ্যা:

  • createSection(): একটি নতুন সেকশন তৈরি করার জন্য ব্যবহৃত হয়।
  • setNumColumns(2): সেকশনের মধ্যে কলামের সংখ্যা নির্ধারণ করে (এখানে ২টি কলাম)।
  • কলামের মধ্যে কন্টেন্ট যোগ করতে, আপনি প্যারাগ্রাফ তৈরি করতে পারেন এবং সেগুলিতে টেক্সট যোগ করতে পারেন।

২. Column Layout এর জন্য অতিরিক্ত কাস্টমাইজেশন

কলাম লেআউটের মধ্যে আপনি column width, spacing, এবং line spacing কাস্টমাইজ করতে পারেন। এই কাস্টমাইজেশনগুলি কলামের উপস্থিতি এবং ব্যবহারিক প্রভাবকে উন্নত করতে সহায়তা করবে।

উদাহরণ: কলামের প্রস্থ এবং 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!");
    }
}

কোড ব্যাখ্যা:

  • setColumnWidth(3000): কলামের প্রস্থ কাস্টমাইজ করে। এখানে ৩০০০ পয়েন্ট (পেজের প্রস্থ) হিসাবে সেট করা হয়েছে।
  • setColumnSpacing(500): কলামগুলির মধ্যে স্পেসিং কাস্টমাইজ করে (পয়েন্টে)।

৩. Multiple Columns with Different Content Styles

কলামের মধ্যে বিভিন্ন ধরনের কন্টেন্ট স্টাইল যেমন 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!");
    }
}

কোড ব্যাখ্যা:

  • run1.setFontSize(12): প্রথম কলামে ফন্ট সাইজ কাস্টমাইজ করা।
  • run1.setBold(true): প্রথম কলামে টেক্সট বোল্ড করা।
  • run2.setItalic(true): দ্বিতীয় কলামে টেক্সট ইটালিক করা।
  • run2.setUnderline(true): দ্বিতীয় কলামে টেক্সট আন্ডারলাইন করা।

সারাংশ

Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে column layout তৈরি করা সম্ভব এবং আপনি columns এর সংখ্যা, প্রস্থ, স্পেসিং কাস্টমাইজ করতে পারেন। Multiple columns এর মধ্যে বিভিন্ন content styles যেমন bold, italic, এবং underline যোগ করা যায়, যাতে কলামের মধ্যে ভিন্ন ভিন্ন ফরম্যাটিং করতে পারেন। কলাম লেআউট ব্যবহারের মাধ্যমে আপনি দীর্ঘ ডকুমেন্টগুলোকে আরো পড়তে সুবিধাজনক এবং visually appealing বানাতে পারবেন।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion