Java Technologies Media Files (Images, Videos) যোগ করা গাইড ও নোট

216

Apache POI লাইব্রেরি ব্যবহার করে আপনি Microsoft Word এবং Excel ডকুমেন্টে Media Files (যেমন, Images, Videos) যোগ করতে পারেন। এই টিউটোরিয়ালে, আমরা দেখব কিভাবে Word ডকুমেন্টে ছবি এবং ভিডিও যোগ করা যায়, এবং Excel ফাইলে ছবি যুক্ত করা যায়।


1. Microsoft Word ডকুমেন্টে Image যোগ করা

Apache POI ব্যবহার করে Word ডকুমেন্টে ছবি যোগ করতে, আপনাকে XWPF API ব্যবহার করতে হবে। এতে addPicture মেথডের মাধ্যমে ছবি ইনসার্ট করা সম্ভব।

উদাহরণ: Word ডকুমেন্টে Image যোগ করা

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

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

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

        // প্যারাগ্রাফ তৈরি করা
        XWPFParagraph paragraph = document.createParagraph();

        // ছবি ফাইল থেকে ইনপুট স্ট্রিম
        FileInputStream imageStream = new FileInputStream("example_image.jpg");

        // ছবি যোগ করা (পিকচার ফরম্যাট, স্টাইল, প্রস্থ, উচ্চতা)
        paragraph.createRun().addPicture(imageStream, XWPFPictureData.PICTURE_TYPE_JPEG, "example_image.jpg", 400, 300);

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

        document.close();
        imageStream.close();
        System.out.println("ইমেজ সফলভাবে Word ডকুমেন্টে যোগ করা হয়েছে!");
    }
}

এটি কী করবে:

  • example_image.jpg ফাইলটি ইনপুট হিসেবে নেয় এবং Word ডকুমেন্টে একটি প্যারাগ্রাফের মধ্যে ইমেজ যোগ করে।
  • ইমেজের আকার 400x300 পিক্সেল হিসাবে সেভ হবে।
  • ডকুমেন্টটি document_with_image.docx নামে সেভ হবে।

2. Microsoft Word ডকুমেন্টে Video যোগ করা

Apache POI সরাসরি Word ডকুমেন্টে ভিডিও যোগ করার জন্য কোনো মেথড প্রদান করে না, কিন্তু আপনি OLE Object ব্যবহার করে একটি ভিডিও (যেমন, .mp4 বা .avi) embed করতে পারেন। এটি একটি অত্যন্ত জটিল প্রক্রিয়া এবং POI এর সাধারণ API এর বাইরে। তবে আপনি ভিডিও লিঙ্ক সংযুক্ত করতে পারেন, যা কেবল একটি হাইপারলিঙ্ক হিসেবে কাজ করবে।

উদাহরণ: Word ডকুমেন্টে Video লিঙ্ক যোগ করা

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

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

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

        // প্যারাগ্রাফ তৈরি করা
        XWPFParagraph paragraph = document.createParagraph();

        // ভিডিও লিঙ্ক যোগ করা (ভিডিও ফাইলের URL)
        String videoLink = "https://www.example.com/sample_video.mp4";
        paragraph.createRun().setText("Click here to watch the video: ");
        paragraph.createRun().setText(videoLink);

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

        document.close();
        System.out.println("ভিডিও লিঙ্ক সফলভাবে Word ডকুমেন্টে যোগ করা হয়েছে!");
    }
}

এটি কী করবে:

  • একটি video link (যেমন: ইউটিউব বা অন্য কোনো প্ল্যাটফর্মে ভিডিও URL) Word ডকুমেন্টে প্যারাগ্রাফের মধ্যে যোগ করবে।
  • ডকুমেন্টটি document_with_video_link.docx নামে সেভ হবে।

3. Microsoft Excel ডকুমেন্টে Image যোগ করা

Apache POI ব্যবহার করে Excel ডকুমেন্টে ইমেজ যোগ করার জন্য HSSFWorkbook বা XSSFWorkbook এর মাধ্যমে Drawing API ব্যবহার করা হয়।

উদাহরণ: Excel ফাইলে Image যোগ করা

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.util.IOUtils;

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

public class AddImageToExcelExample {
    public static void main(String[] args) throws IOException {
        // Excel ফাইল তৈরি
        XSSFWorkbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet1");

        // ছবি ইনপুট স্ট্রিম
        FileInputStream imageStream = new FileInputStream("example_image.jpg");
        byte[] bytes = IOUtils.toByteArray(imageStream);

        // ছবি ইনসার্ট করার জন্য Drawing প্রপার্টি তৈরি
        int pictureIdx = workbook.addPicture(bytes, Workbook.PICTURE_TYPE_JPEG);
        Drawing drawing = sheet.createDrawingPatriarch();
        ClientAnchor anchor = workbook.getCreationHelper().createClientAnchor();

        // ছবি অবস্থান এবং আকার কনফিগার করা
        anchor.setCol1(1);
        anchor.setRow1(1);
        anchor.setCol2(3);
        anchor.setRow2(4);

        // ছবি সেল সেট করা
        Picture pict = drawing.createPicture(anchor, pictureIdx);
        pict.resize();  // ছবির আকার ঠিক করা

        // Excel ফাইল সেভ করা
        try (FileOutputStream out = new FileOutputStream("document_with_image.xlsx")) {
            workbook.write(out);
        }

        workbook.close();
        imageStream.close();
        System.out.println("ইমেজ সফলভাবে Excel ডকুমেন্টে যোগ করা হয়েছে!");
    }
}

এটি কী করবে:

  • example_image.jpg ফাইলটি Excel ডকুমেন্টে Sheet1 এর মধ্যে একটি নির্দিষ্ট স্থানে (কলাম 1, সারি 1 থেকে কলাম 3, সারি 4) ইমেজ যোগ করবে।
  • ডকুমেন্টটি document_with_image.xlsx নামে সেভ হবে।

4. Excel ডকুমেন্টে Video লিঙ্ক যোগ করা

Excel ডকুমেন্টে ভিডিও যোগ করার মতো কোনো সরাসরি ফিচার POI এর মাধ্যমে উপলব্ধ নয়, তবে আপনি ভিডিও লিঙ্ক (URL) যোগ করতে পারেন যা একটি ক্লিকেবল লিঙ্ক হিসেবে কাজ করবে।

উদাহরণ: Excel ডকুমেন্টে Video লিঙ্ক যোগ করা

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

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

public class AddVideoLinkToExcelExample {
    public static void main(String[] args) throws IOException {
        // Excel ফাইল তৈরি
        XSSFWorkbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet1");

        // ভিডিও লিঙ্কের জন্য সেল
        Row row = sheet.createRow(0);
        Cell cell = row.createCell(0);
        String videoLink = "https://www.example.com/sample_video.mp4";

        // লিঙ্ক যোগ করা
        Hyperlink link = workbook.getCreationHelper().createHyperlink(HyperlinkType.URL);
        link.setAddress(videoLink);
        cell.setHyperlink(link);
        cell.setCellValue("Click here to watch the video");

        // Excel ফাইল সেভ করা
        try (FileOutputStream out = new FileOutputStream("document_with_video_link.xlsx")) {
            workbook.write(out);
        }

        workbook.close();
        System.out.println("ভিডিও লিঙ্ক সফলভাবে Excel ডকুমেন্টে যোগ করা হয়েছে!");
    }
}

এটি কী করবে:

  • Excel ডকুমেন্টে একটি video link (URL) যোগ করবে, যা একটি ক্লিকযোগ্য লিঙ্ক হিসেবে কাজ করবে।
  • ডকুমেন্টটি document_with_video_link.xlsx নামে সেভ হবে।

সারাংশ

Apache POI ব্যবহার করে আপনি Word এবং Excel ডকুমেন্টে Media Files যেমন Images এবং Videos যোগ করতে পারেন। Word ডকুমেন্টে ইমেজ যোগ করা সহজ, কিন্তু ভিডিও যোগ করার জন্য OLE Object বা লিঙ্ক ব্যবহার করতে হবে। Excel ডকুমেন্টে ইমেজ এবং ভিডিও লিঙ্ক সহজেই যোগ করা সম্ভব। এই ফিচারগুলো আপনাকে ডকুমেন্টে মাল্টিমিডিয়া উপাদান অন্তর্ভুক্ত করার ক্ষেত্রে সহায়তা করবে।

Content added By
Promotion

Are you sure to start over?

Loading...