Slide তৈরি করা এবং কনটেন্ট যোগ করা

PowerPoint ফাইল ম্যানিপুলেশন (HSLF এবং XSLF) - অ্যাপাচি পিওআই (Apache POI) - Java Technologies

215

Apache POI ব্যবহার করে আপনি PowerPoint ফাইল তৈরি করতে পারেন, যেমন PPT এবং PPTX ফরম্যাটে। এর জন্য XSLF API ব্যবহার করা হয়, যা PPTX ফাইলের জন্য উপযুক্ত। HSLF API পুরানো PPT ফরম্যাটের জন্য ব্যবহৃত হয়।

এখানে আলোচনা করা হবে কিভাবে Apache POI ব্যবহার করে PowerPoint ফাইল তৈরি এবং সেই ফাইলে Slide এবং কনটেন্ট যোগ করা যায়।


Slide তৈরি করা এবং কনটেন্ট যোগ করা (PPTX ফাইল)

১. Apache POI এর মাধ্যমে নতুন PowerPoint ফাইল তৈরি করা

XSLF API ব্যবহার করে আমরা একটি নতুন PPTX ফাইল তৈরি করতে পারি এবং তাতে Slide যোগ করতে পারি।

উদাহরণ: নতুন PowerPoint ফাইল তৈরি এবং Slide যোগ করা

import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFTextBox;
import org.apache.poi.xslf.usermodel.XSLFTextRun;
import java.io.FileOutputStream;
import java.io.IOException;

public class CreatePPTX {
    public static void main(String[] args) {
        try {
            // Create a new XMLSlideShow object
            XMLSlideShow ppt = new XMLSlideShow();

            // Create a slide
            XSLFSlide slide = ppt.createSlide();

            // Add a text box to the slide
            XSLFTextBox textBox = slide.createTextBox();
            XSLFTextRun textRun = textBox.addNewTextParagraph().addNewTextRun();
            textRun.setText("Hello, this is a sample slide created with Apache POI!");
            textRun.setFontSize(24.0);
            textBox.setAnchor(new java.awt.Rectangle(100, 100, 400, 100));

            // Save the PowerPoint presentation to a file
            FileOutputStream out = new FileOutputStream("SamplePPTX.pptx");
            ppt.write(out);
            out.close();

            System.out.println("PPTX file created successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

এখানে একটি নতুন PowerPoint ফাইল তৈরি করা হয়েছে, যার মধ্যে একটি Slide এবং একটি TextBox যোগ করা হয়েছে। TextBox এর মধ্যে একটি টেক্সট যোগ করা হয়েছে এবং ফাইলটি SamplePPTX.pptx নামে সেভ করা হয়েছে।


Slide এর মধ্যে অন্যান্য কনটেন্ট যোগ করা

২. Text, Image, এবং Shapes যোগ করা

XSLF API এর মাধ্যমে আপনি Slide এ শুধু TextBox নয়, বরং Image, Shapes, Tables, Charts এবং আরও অনেক কনটেন্ট যোগ করতে পারেন। নিচে কিছু সাধারণ কনটেন্ট যোগ করার উদাহরণ দেওয়া হলো।

উদাহরণ: Slide এ Image যোগ করা

import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFPictureData;
import org.apache.poi.xslf.usermodel.XSLFImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class AddImageToSlide {
    public static void main(String[] args) {
        try {
            // Create a new PowerPoint presentation
            XMLSlideShow ppt = new XMLSlideShow();

            // Create a slide
            XSLFSlide slide = ppt.createSlide();

            // Add an image to the slide
            File imgFile = new File("image.jpg"); // Ensure the image is in the correct path
            byte[] pictureData = java.nio.file.Files.readAllBytes(imgFile.toPath());
            XSLFPictureData picture = ppt.addPicture(pictureData, XSLFPictureData.PICTURE_TYPE_JPEG);
            slide.createPicture(picture);

            // Save the PowerPoint presentation to a file
            FileOutputStream out = new FileOutputStream("SampleWithImage.pptx");
            ppt.write(out);
            out.close();

            System.out.println("PPTX with image created successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

এখানে Slide এ একটি Image যোগ করা হয়েছে, যেটি image.jpg নামক একটি ছবি। ছবিটি PowerPoint ফাইলে সেভ করা হয়েছে।

উদাহরণ: Slide এ Shape যোগ করা

import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFAutoShape;
import org.apache.poi.xslf.usermodel.XSLFTextParagraph;
import org.apache.poi.xslf.usermodel.XSLFTextRun;
import java.io.FileOutputStream;
import java.io.IOException;

public class AddShapeToSlide {
    public static void main(String[] args) {
        try {
            // Create a new PowerPoint presentation
            XMLSlideShow ppt = new XMLSlideShow();

            // Create a slide
            XSLFSlide slide = ppt.createSlide();

            // Add a shape (rectangle) to the slide
            XSLFAutoShape shape = slide.createAutoShape();
            shape.setShapeType(ShapeType.RECTANGLE);
            shape.setAnchor(new java.awt.Rectangle(50, 50, 200, 100));

            // Add text to the shape
            XSLFTextParagraph p = shape.addNewTextParagraph();
            XSLFTextRun r = p.addNewTextRun();
            r.setText("This is a rectangle shape with text!");

            // Save the PowerPoint presentation to a file
            FileOutputStream out = new FileOutputStream("SampleWithShape.pptx");
            ppt.write(out);
            out.close();

            System.out.println("PPTX with shape created successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

এখানে Slide এ একটি Rectangle Shape যোগ করা হয়েছে, এবং সেই শেইপের মধ্যে কিছু টেক্সট যোগ করা হয়েছে।


সারাংশ

Apache POI এর মাধ্যমে PowerPoint (PPTX) ফাইল তৈরি করা এবং তাতে Slide যোগ করা খুবই সহজ। আপনি TextBox, Image, Shape, Chart এবং অন্যান্য কনটেন্ট Slide এ যোগ করতে পারেন। এই সুবিধাটি Apache POI কে Java ভিত্তিক অ্যাপ্লিকেশনগুলির জন্য একটি শক্তিশালী টুল হিসেবে তৈরি করে, যেগুলি PowerPoint ফাইলের কনটেন্ট প্রোগ্রামেটিকভাবে তৈরি, সম্পাদনা এবং ম্যানিপুলেট করতে চায়।


Content added By
Promotion

Are you sure to start over?

Loading...