কাস্টম পেজ লেআউট তৈরি করা

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

Apache POI ব্যবহার করে আপনি Microsoft Word ডকুমেন্টে কাস্টম Page Layout তৈরি করতে পারেন। কাস্টম পেজ লেআউটের মধ্যে পেজ অরিয়েন্টেশন (Landscape বা Portrait), পেজ সাইজ, মার্জিন, এবং অন্যান্য স্টাইলিং অপশন অন্তর্ভুক্ত থাকতে পারে। এই সমস্ত কাস্টমাইজেশনগুলি পেজ লেআউটকে আরও নির্দিষ্ট বা প্রোফেশনাল করে তোলে।

নিচে একটি উদাহরণ দেওয়া হলো, যেখানে কাস্টম Page Layout সেটআপ করা হয়েছে যেমন পেজ অরিয়েন্টেশন, সাইজ, মার্জিন ইত্যাদি।


১. পেজ অরিয়েন্টেশন এবং সাইজ কাস্টমাইজ করা

আপনি একটি কাস্টম পেজ অরিয়েন্টেশন এবং সাইজ সেট করতে পারেন। এখানে Portrait এবং Landscape উভয় ধরনের অরিয়েন্টেশন ব্যবহার করা হয়েছে।

import org.apache.poi.xwpf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;

public class CustomPageLayoutExample {
    public static void main(String[] args) throws IOException {
        XWPFDocument document = new XWPFDocument();

        // প্রথম Section (Portrait Orientation)
        XWPFParagraph para1 = document.createParagraph();
        para1.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run1 = para1.createRun();
        run1.setText("This is the first section with Portrait orientation.");
        
        // পেজ অরিয়েন্টেশন পরিবর্তন (Landscape)
        XWPFSection section2 = document.createSection();
        section2.setOrientation(Orientation.LANDSCAPE); // Landscape Orientation

        // দ্বিতীয় Section (Landscape)
        XWPFParagraph para2 = document.createParagraph();
        para2.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run2 = para2.createRun();
        run2.setText("This is the second section with Landscape orientation.");

        // ডকুমেন্ট সেভ করা
        FileOutputStream out = new FileOutputStream("custom_page_layout_example.docx");
        document.write(out);
        out.close();
    }
}

এখানে, প্রথম Section-এ Portrait অরিয়েন্টেশন ব্যবহার করা হয়েছে এবং দ্বিতীয় Section-এ Landscape অরিয়েন্টেশন দেওয়া হয়েছে।


২. কাস্টম পেজ সাইজ সেট করা

Microsoft Word ডকুমেন্টে পেজ সাইজ কাস্টমাইজ করা সম্ভব। আপনি একটি নির্দিষ্ট সাইজ যেমন A4, A3 বা কাস্টম সাইজ নির্ধারণ করতে পারেন। এখানে A4 সাইজ এবং কাস্টম সাইজের উদাহরণ দেখানো হয়েছে।

import org.apache.poi.xwpf.usermodel.*;
import org.apache.poi.xwpf.usermodel.XWPFFooter;

import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;

public class CustomPageSizeExample {
    public static void main(String[] args) throws IOException {
        XWPFDocument document = new XWPFDocument();

        // প্রথম Section (A4 সাইজ)
        XWPFParagraph para1 = document.createParagraph();
        para1.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run1 = para1.createRun();
        run1.setText("This is the first section with A4 size.");

        // কাস্টম পেজ সাইজ (উদাহরণ হিসেবে 6x9 inch সাইজ)
        XWPFSection section2 = document.createSection();
        section2.setPageSize(6 * 72, 9 * 72);  // 6x9 inch

        // দ্বিতীয় Section (কাস্টম সাইজ)
        XWPFParagraph para2 = document.createParagraph();
        para2.setAlignment(ParagraphAlignment.LEFT);
        XWPFRun run2 = para2.createRun();
        run2.setText("This is the second section with a custom page size (6x9 inches).");

        // ডকুমেন্ট সেভ করা
        FileOutputStream out = new FileOutputStream("custom_page_size_example.docx");
        document.write(out);
        out.close();
    }
}

এখানে, A4 সাইজের একটি Section তৈরি করা হয়েছে এবং পরবর্তী Section-এ একটি কাস্টম সাইজ (6x9 inches) প্রয়োগ করা হয়েছে।


৩. কাস্টম পেজ মার্জিন

পেজের মার্জিন কাস্টমাইজ করা হলে, পুরো পেজের চারপাশে ডকুমেন্টের কনটেন্টের অবস্থান পরিবর্তিত হয়। আপনি top, bottom, left, এবং right মার্জিন কাস্টমাইজ করতে পারেন।

import org.apache.poi.xwpf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;

public class CustomPageMarginExample {
    public static void main(String[] args) throws IOException {
        XWPFDocument document = new XWPFDocument();

        // প্রথম Section (ডিফল্ট মার্জিন)
        XWPFParagraph para1 = document.createParagraph();
        para1.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run1 = para1.createRun();
        run1.setText("This is the first section with default margins.");

        // সেকেন্ড Section (কাস্টম মার্জিন)
        XWPFParagraph para2 = document.createParagraph();
        para2.setAlignment(ParagraphAlignment.CENTER);
        para2.createRun().setText("\n\n---- Section Break ----\n\n");

        // মার্জিন কাস্টমাইজ করা
        XWPFSection section2 = document.createSection();
        section2.setMargins(72, 72, 72, 72);  // top, right, bottom, left মার্জিন (1 inch)

        XWPFParagraph para3 = document.createParagraph();
        para3.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run3 = para3.createRun();
        run3.setText("This is the second section with custom margins.");

        // ডকুমেন্ট সেভ করা
        FileOutputStream out = new FileOutputStream("custom_page_margin_example.docx");
        document.write(out);
        out.close();
    }
}

এখানে, প্রথম Section-এ ডিফল্ট মার্জিন ব্যবহার করা হয়েছে এবং দ্বিতীয় Section-এ 1 inch মার্জিন (top, right, bottom, left) কাস্টমাইজ করা হয়েছে।


৪. Header এবং Footer কাস্টমাইজ করা

প্রতিটি Section এর জন্য আলাদা হেডার ও ফুটার ব্যবহার করা যেতে পারে। আপনি হেডার এবং ফুটারে কাস্টম টেক্সট, পেজ নাম্বার বা অন্যান্য ফরম্যাটিং যোগ করতে পারেন।

import org.apache.poi.xwpf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;

public class CustomHeaderFooterExample {
    public static void main(String[] args) throws IOException {
        XWPFDocument document = new XWPFDocument();

        // প্রথম Section Header
        XWPFHeader header1 = document.createHeader(HeaderFooterType.DEFAULT);
        XWPFParagraph paraHeader1 = header1.createParagraph();
        XWPFRun runHeader1 = paraHeader1.createRun();
        runHeader1.setText("Header for Section 1");

        // প্রথম Section Body
        XWPFParagraph para1 = document.createParagraph();
        para1.setAlignment(ParagraphAlignment.CENTER);
        XWPFRun run1 = para1.createRun();
        run1.setText("This is the first section with header.");

        // দ্বিতীয় Section Header
        XWPFHeader header2 = document.createHeader(HeaderFooterType.DEFAULT);
        XWPFParagraph paraHeader2 = header2.createParagraph();
        XWPFRun runHeader2 = paraHeader2.createRun();
        runHeader2.setText("Header for Section 2");

        // দ্বিতীয় Section Body
        XWPFParagraph para2 = document.createParagraph();
        para2.setAlignment(ParagraphAlignment.LEFT);
        XWPFRun run2 = para2.createRun();
        run2.setText("This is the second section with a different header.");

        // ডকুমেন্ট সেভ করা
        FileOutputStream out = new FileOutputStream("custom_header_footer_example.docx");
        document.write(out);
        out.close();
    }
}

এখানে, দুটি আলাদা Section-এর জন্য আলাদা Header যোগ করা হয়েছে।


৫. সারাংশ

Apache POI ব্যবহার করে আপনি Microsoft Word ডকুমেন্টে কাস্টম পেজ লেআউট তৈরি করতে পারেন। পেজ অরিয়েন্টেশন, সাইজ, মার্জিন, হেডার, ফুটার এবং অন্যান্য ফরম্যাটিং কাস্টমাইজেশন এর মাধ্যমে ডকুমেন্টের লেআউট সহজেই নিয়ন্ত্রণ করা সম্ভব। এই ফিচারগুলি আপনাকে একটি পেশাদারী ডকুমেন্ট ডিজাইন করতে সহায়তা করবে, বিশেষত যখন আপনার পেজ লেআউটটি নির্দিষ্ট স্ট্যান্ডার্ড বা ডিজাইন অনুসরণ করতে হবে।

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

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

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

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