Multiple Page Handling

Java Technologies - অ্যাপাচি পিওআই (ওয়ার্ড) Page Break এবং Section Break |
138
138

Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে একাধিক পেজ হ্যান্ডেল করা যেতে পারে। সাধারণত, Word ডকুমেন্টে পেজ ব্রেক ব্যবহার করে নতুন পেজ তৈরি করা হয়। আপনি যখন একাধিক পেজের ডকুমেন্ট তৈরি করতে চান, তখন পেজ ব্রেক ব্যবহার করে সেগুলো আলাদা আলাদা পেজে বিভক্ত করতে পারেন।

এখানে আমরা দেখবো কিভাবে multiple pages তৈরি করা হয় এবং page breaks কিভাবে ইনসার্ট করা হয়।


১. পেজ ব্রেক যোগ করা

পেজ ব্রেক ব্যবহার করে আপনি একটি পেজের শেষে আরেকটি পেজ শুরু করতে পারবেন। এটি সাধারণত লম্বা ডকুমেন্ট বা অনেক তথ্যের জন্য প্রয়োজন হয়।

উদাহরণ: পেজ ব্রেক দিয়ে Multiple Pages তৈরি করা

import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;

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

public class MultiplePagesExample {
    public static void main(String[] args) throws IOException {
        // একটি নতুন Word ডকুমেন্ট তৈরি করা
        XWPFDocument document = new XWPFDocument();

        // প্রথম পেজের কন্টেন্ট
        XWPFParagraph paragraph1 = document.createParagraph();
        XWPFRun run1 = paragraph1.createRun();
        run1.setText("এটি প্রথম পেজের কন্টেন্ট।");

        // পেজ ব্রেক যোগ করা
        document.createParagraph().createRun().addBreak(); // পেজ ব্রেক

        // দ্বিতীয় পেজের কন্টেন্ট
        XWPFParagraph paragraph2 = document.createParagraph();
        XWPFRun run2 = paragraph2.createRun();
        run2.setText("এটি দ্বিতীয় পেজের কন্টেন্ট।");

        // পেজ ব্রেক যোগ করা (আরেকটি পেজের জন্য)
        document.createParagraph().createRun().addBreak(); // দ্বিতীয় পেজ ব্রেক

        // তৃতীয় পেজের কন্টেন্ট
        XWPFParagraph paragraph3 = document.createParagraph();
        XWPFRun run3 = paragraph3.createRun();
        run3.setText("এটি তৃতীয় পেজের কন্টেন্ট।");

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

        System.out.println("Multiple pages with page breaks created successfully!");
    }
}

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

  • createRun().addBreak(): এই মেথডটি পেজ ব্রেক যোগ করার জন্য ব্যবহার করা হয়। একবার পেজ ব্রেক যোগ করলে, পরবর্তী কন্টেন্ট নতুন পেজে শুরু হবে।
  • XWPFParagraph: একটি নতুন প্যারাগ্রাফ তৈরি করার জন্য ব্যবহৃত হয়, যেখানে আমরা কন্টেন্ট (টেক্সট) যোগ করতে পারি।

২. পেজ ব্রেক এবং কাস্টম স্টাইল

আপনি কাস্টম স্টাইল ব্যবহার করে পেজ ব্রেকের পরে বিভিন্ন ধরনের ফরম্যাটিং বা স্টাইল অ্যাপ্লাই করতে পারেন। যেমন, পেজ ব্রেকের পর প্যারাগ্রাফের ফন্ট সাইজ বা স্টাইল পরিবর্তন করা।

উদাহরণ: পেজ ব্রেকের পর কাস্টম ফন্ট এবং সাইজ অ্যাপ্লাই করা

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.XWPFStyles;

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

public class StyledMultiplePagesExample {
    public static void main(String[] args) throws IOException {
        // একটি নতুন Word ডকুমেন্ট তৈরি করা
        XWPFDocument document = new XWPFDocument();

        // প্রথম পেজের কন্টেন্ট
        XWPFParagraph paragraph1 = document.createParagraph();
        XWPFRun run1 = paragraph1.createRun();
        run1.setText("এটি প্রথম পেজের কন্টেন্ট।");

        // পেজ ব্রেক যোগ করা
        document.createParagraph().createRun().addBreak(); // পেজ ব্রেক

        // দ্বিতীয় পেজে কাস্টম ফন্ট এবং সাইজ সহ কন্টেন্ট
        XWPFParagraph paragraph2 = document.createParagraph();
        XWPFRun run2 = paragraph2.createRun();
        run2.setText("এটি দ্বিতীয় পেজের কন্টেন্ট, যা কাস্টম স্টাইলে প্রদর্শিত হচ্ছে।");
        run2.setFontSize(14); // ফন্ট সাইজ সেট করা
        run2.setBold(true);   // বোল্ড টেক্সট

        // তৃতীয় পেজের কন্টেন্ট
        document.createParagraph().createRun().addBreak(); // দ্বিতীয় পেজ ব্রেক

        XWPFParagraph paragraph3 = document.createParagraph();
        XWPFRun run3 = paragraph3.createRun();
        run3.setText("এটি তৃতীয় পেজের কন্টেন্ট, কাস্টম স্টাইল সহ।");
        run3.setItalic(true);  // ইটালিক টেক্সট

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

        System.out.println("Multiple pages with custom styles created successfully!");
    }
}

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

  • run2.setFontSize(14): দ্বিতীয় পেজের জন্য ফন্ট সাইজ ১৪ নির্ধারণ করা।
  • run2.setBold(true): দ্বিতীয় পেজে বোল্ড স্টাইল প্রযোজ্য করা।
  • run3.setItalic(true): তৃতীয় পেজে ইটালিক স্টাইল প্রযোজ্য করা।

৩. পেজ সেটআপ কাস্টমাইজেশন

আপনি পেজ সাইজ, মার্জিন বা অরিয়েন্টেশন কাস্টমাইজও করতে পারেন। এতে করে পেজের আকার এবং ডকুমেন্টের বিন্যাসও পরিবর্তিত হয়।

উদাহরণ: কাস্টম পেজ সাইজ এবং মার্জিন

import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;

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

public class PageSetupExample {
    public static void main(String[] args) throws IOException {
        // একটি নতুন Word ডকুমেন্ট তৈরি করা
        XWPFDocument document = new XWPFDocument();

        // পেজ সেটআপ কাস্টমাইজ করা (এটা ডকুমেন্টের মূল পেজ সেটিংস পরিবর্তন করবে)
        document.getDocument().getBody().getSectPr().getPgMar().setTop(720); // টপ মার্জিন
        document.getDocument().getBody().getSectPr().getPgMar().setBottom(720); // বটম মার্জিন
        document.getDocument().getBody().getSectPr().getPgMar().setLeft(720); // লেফট মার্জিন
        document.getDocument().getBody().getSectPr().getPgMar().setRight(720); // রাইট মার্জিন

        // প্রথম পেজের কন্টেন্ট
        XWPFParagraph paragraph1 = document.createParagraph();
        XWPFRun run1 = paragraph1.createRun();
        run1.setText("এটি কাস্টম মার্জিন সহ প্রথম পেজ।");

        // পেজ ব্রেক যোগ করা
        document.createParagraph().createRun().addBreak(); // পেজ ব্রেক

        // দ্বিতীয় পেজের কন্টেন্ট
        XWPFParagraph paragraph2 = document.createParagraph();
        XWPFRun run2 = paragraph2.createRun();
        run2.setText("এটি দ্বিতীয় পেজ, যেখানে কাস্টম মার্জিন রয়েছে।");

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

        System.out.println("Document with custom page setup created successfully!");
    }
}

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

  • setTop(720), setBottom(720), setLeft(720), setRight(720): এই মেথডগুলি পেজের মার্জিন কাস্টমাইজ করার জন্য ব্যবহৃত হয়। মানগুলি পয়েন্টে (points) দেওয়া হয়, যেখানে 1 ইঞ্চি = 72 পয়েন্ট।

সারাংশ

Apache POI ব্যবহার করে Microsoft Word (DOCX) ডকুমেন্টে multiple pages তৈরি করা সম্ভব এবং page breaks যোগ করে সেগুলিকে আলাদা আলাদা পেজে বিভক্ত করা যায়। এছাড়া, page setup যেমন margin এবং orientation কাস্টমাইজ করা, এবং পেজ ব্রেকের পরে বিভিন্ন ধরনের font styling যেমন bold, italic, font size কাস্টমাইজ করা যায়।

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

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

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

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