Third-party Extensions এবং Libraries এর Integration

Java Technologies - অ্যাপাচি পিওআই (ওয়ার্ড) Apache POI Word API এর সাথে অন্যান্য লাইব্রেরির তুলনা |
140
140

Apache POI লাইব্রেরি Word ডকুমেন্ট ম্যানিপুলেশন এবং প্রক্রিয়াজাতকরণের জন্য ব্যবহৃত একটি শক্তিশালী টুল, যা DOC এবং DOCX ফরম্যাটের ডকুমেন্ট তৈরি, সম্পাদনা, এবং পড়তে ব্যবহৃত হয়। তবে, যদি আপনি Apache POI ব্যবহার করার সময় কিছু অতিরিক্ত ফিচার, কার্যকারিতা বা ইন্টিগ্রেশন চান, তবে Third-party Extensions এবং Libraries ব্যবহার করতে পারেন। এই ধরনের extensions বা libraries আপনাকে আরও শক্তিশালী ডকুমেন্ট ম্যানিপুলেশন, কনভার্সন, বা বিভিন্ন ফরম্যাটের মধ্যে কমপ্যাটিবিলিটি আনতে সাহায্য করতে পারে।

এই লেখায়, আমরা কিছু জনপ্রিয় থার্ড-পার্টি লাইব্রেরি এবং এক্সটেনশন দেখব যা Apache POI এর সাথে ইন্টিগ্রেট করা যেতে পারে।


১. Apache POI এবং iText Integration

iText একটি ওপেন সোর্স পিডিএফ লাইব্রেরি যা পিডিএফ ডকুমেন্ট তৈরি, পাঠ এবং সম্পাদনার জন্য ব্যবহৃত হয়। Apache POI এবং iText একত্রে ব্যবহার করলে আপনি Word ডকুমেন্ট থেকে পিডিএফ ফাইল তৈরি করতে পারেন।

উদাহরণ: Apache POI এবং iText ব্যবহার করে DOCX থেকে PDF তে কনভার্ট করা

import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfWriter;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;

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

public class PoiToPdfConversion {
    public static void main(String[] args) throws IOException {
        // DOCX ফাইল লোড করা
        XWPFDocument document = new XWPFDocument(new FileInputStream("document.docx"));

        // iText পিডিএফ ডকুমেন্ট তৈরি করা
        Document pdfDoc = new Document();
        PdfWriter.getInstance(pdfDoc, new FileOutputStream("output.pdf"));
        pdfDoc.open();

        // DOCX এর প্যারাগ্রাফ পড়ে পিডিএফে লিখা
        for (XWPFParagraph paragraph : document.getParagraphs()) {
            pdfDoc.add(new com.itextpdf.text.Paragraph(paragraph.getText()));
        }

        pdfDoc.close();
    }
}

এই কোডে, একটি DOCX ফাইল থেকে সমস্ত প্যারাগ্রাফ পড়া হচ্ছে এবং iText লাইব্রেরি ব্যবহার করে PDF ফাইল তৈরি করা হচ্ছে।


২. Apache POI এবং Aspose.Words Integration

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

আপনি Apache POI এবং Aspose.Words একত্রে ব্যবহার করে Word ডকুমেন্টের উন্নত বৈশিষ্ট্যগুলি পরিচালনা করতে পারেন।

উদাহরণ: Aspose.Words ব্যবহার করে DOCX ফরম্যাটে কনভার্ট করা

import com.aspose.words.Document;

import java.io.IOException;

public class AsposeIntegrationExample {
    public static void main(String[] args) throws IOException {
        // Aspose.Words ডকুমেন্ট লোড করা
        Document doc = new Document("document.docx");

        // নতুন ফাইল হিসেবে সেভ করা
        doc.save("converted_document.docx");
    }
}

এখানে, Aspose.Words লাইব্রেরি দিয়ে DOCX ফাইল লোড এবং সেভ করা হচ্ছে।


৩. Apache POI এবং Apache FOP Integration

Apache FOP (Formatting Objects Processor) একটি ওপেন সোর্স সফটওয়্যার যা XML ডকুমেন্টকে PDF ফরম্যাটে রেন্ডার করার জন্য ব্যবহৃত হয়। আপনি যদি Apache POI দিয়ে DOCX ডকুমেন্ট তৈরি করতে চান এবং পরে তা FOP ব্যবহার করে PDF তে কনভার্ট করতে চান, তবে এটি সম্ভব।

উদাহরণ: Apache POI এবং Apache FOP ব্যবহার করে DOCX থেকে PDF কনভার্ট করা

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

import org.apache.fop.apps.Fop;
import org.apache.fop.apps.FopFactory;
import org.apache.fop.apps.MimeConstants;
import org.apache.fop.apps.XMLInputSource;
import org.apache.fop.apps.Driver;

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

public class PoiToFopConversion {
    public static void main(String[] args) throws Exception {
        // DOCX ফাইল লোড করা
        XWPFDocument document = new XWPFDocument(new FileInputStream("document.docx"));

        // FOP প্রক্রিয়া তৈরি করা
        FopFactory fopFactory = FopFactory.newInstance(new File("fop.xconf"));
        Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, new FileOutputStream("output.pdf"));

        // FOP ড্রাইভার দিয়ে কনভার্ট করা
        Driver driver = new Driver();
        driver.setOutputStream(new FileOutputStream("output.pdf"));
        driver.setContentHandler(fop.getDefaultHandler());

        for (XWPFParagraph paragraph : document.getParagraphs()) {
            // DOCX প্যারাগ্রাফ থেকে XML এর মাধ্যমে ফরম্যাট করা
            String xmlContent = "<text>" + paragraph.getText() + "</text>";
            driver.process(new XMLInputSource(new StringReader(xmlContent)));
        }
    }
}

এখানে, Apache POI দিয়ে DOCX ফাইল থেকে প্যারাগ্রাফ নিয়ে Apache FOP দিয়ে PDF তে কনভার্ট করা হচ্ছে।


৪. Apache POI এবং Freemarker Integration

Freemarker একটি জনপ্রিয় টেমপ্লেট ইঞ্জিন যা Java প্রোগ্রামিং ভাষায় ডাইনামিক কন্টেন্ট তৈরি করতে ব্যবহৃত হয়। আপনি Apache POI এর সাথে Freemarker ব্যবহার করে Word ডকুমেন্টের জন্য ডাইনামিক কনটেন্ট তৈরি করতে পারেন।

উদাহরণ: Freemarker ব্যবহার করে ডাইনামিক DOCX ফাইল তৈরি

import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;

import java.io.*;
import java.util.HashMap;
import java.util.Map;

public class PoiFreemarkerExample {
    public static void main(String[] args) throws IOException, TemplateException {
        // Freemarker কনফিগারেশন তৈরি করা
        Configuration cfg = new Configuration(Configuration.VERSION_2_3_30);
        cfg.setDirectoryForTemplateLoading(new File("templates"));

        // টেমপ্লেট লোড করা
        Template template = cfg.getTemplate("template.ftl");

        // ডাইনামিক ডেটা
        Map<String, Object> dataModel = new HashMap<>();
        dataModel.put("name", "John Doe");

        // Freemarker টেমপ্লেট প্রসেস করা
        StringWriter stringWriter = new StringWriter();
        template.process(dataModel, stringWriter);

        // DOCX ডকুমেন্ট তৈরি করা
        XWPFDocument document = new XWPFDocument();
        XWPFParagraph paragraph = document.createParagraph();
        paragraph.createRun().setText(stringWriter.toString());

        // DOCX ফাইল সেভ করা
        try (FileOutputStream out = new FileOutputStream("output.docx")) {
            document.write(out);
        }
    }
}

এখানে, Freemarker টেমপ্লেট ব্যবহার করে ডাইনামিক ডেটা দিয়ে DOCX ফাইল তৈরি করা হচ্ছে।


৫. সারাংশ

Apache POI লাইব্রেরির সাথে third-party extensions এবং libraries একত্রে ব্যবহার করে আপনি Word ডকুমেন্টের কার্যকারিতা বাড়াতে পারেন। বিভিন্ন লাইব্রেরি যেমন iText, Aspose.Words, Apache FOP, এবং Freemarker আপনাকে DOCX ফাইলের কনভার্টন, উন্নত কনটেন্ট ম্যানিপুলেশন, ডাইনামিক ডেটা ইনজেকশন, এবং পিডিএফ/এক্সএমএল কনভার্সন করতে সহায়তা করতে পারে।

এই ধরনের integrations আপনার ডকুমেন্ট ম্যানিপুলেশনের ক্ষমতাকে ব্যাপকভাবে সম্প্রসারিত করতে সক্ষম, বিশেষ করে যখন আপনার বিভিন্ন ফরম্যাটে আউ

টপুট প্রয়োজন হয় বা বিশেষ কনটেন্ট ম্যানিপুলেশন দরকার হয়।

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

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

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

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