উদাহরণ সহ PDF এ Graphics যোগ করা

PDF এ Graphics এবং Shapes আঁকা - পিডিএফবক্স (PDFbox) - Java Technologies

346

পিডিএফবক্স (PDFBox) এর সাহায্যে পিডিএফ ডকুমেন্টে গ্রাফিক্স (যেমন লাইন, রেকটাঙ্গল, বৃত্ত ইত্যাদি) যোগ করা যেতে পারে। এটি পিডিএফ ডকুমেন্টে ভিজ্যুয়াল উপাদান তৈরি করতে সাহায্য করে। এই টিউটোরিয়ালে আমরা দেখব কিভাবে পিডিএফ ডকুমেন্টে গ্রাফিক্স যোগ করা যায়।

গ্রাফিক্স যোগ করার জন্য প্রস্তুতি

প্রথমে পিডিএফবক্স লাইব্রেরি আপনার প্রোজেক্টে অন্তর্ভুক্ত থাকতে হবে। আপনি Maven অথবা Gradle ব্যবহার করে এটি যুক্ত করতে পারেন।

Maven (pom.xml):

<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.28</version>
</dependency>

Gradle (build.gradle):

implementation 'org.apache.pdfbox:pdfbox:2.0.28'

PDF এ Graphics যোগ করার উদাহরণ

এখন, নিচে একটি উদাহরণ দেয়া হলো যেখানে পিডিএফ ডকুমেন্টে গ্রাফিক্স যেমন লাইন, রেকটাঙ্গল, এবং বৃত্ত যোগ করা হয়েছে:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.font.PDType1Font;
import java.io.IOException;

public class AddGraphicsToPDF {

    public static void main(String[] args) {
        // পিডিএফ ডকুমেন্ট তৈরি
        PDDocument document = new PDDocument();

        try {
            // নতুন পিডিএফ পেজ যোগ করা
            PDPage page = new PDPage();
            document.addPage(page);

            // কনটেন্ট স্ট্রিম তৈরি
            PDPageContentStream contentStream = new PDPageContentStream(document, page);

            // টেক্সট শুরু করা
            contentStream.beginText();
            contentStream.setFont(PDType1Font.HELVETICA_BOLD, 12);
            contentStream.newLineAtOffset(100, 700);  // পেজের স্থান নির্ধারণ
            contentStream.showText("PDF with Graphics Example");
            contentStream.endText();

            // গ্রাফিক্স যোগ করা

            // লাইন ড্র করা
            contentStream.setLineWidth(1f);
            contentStream.moveTo(100, 650);  // শুরুর পয়েন্ট
            contentStream.lineTo(200, 650);  // শেষ পয়েন্ট
            contentStream.stroke();  // স্ট্রোক করে লাইন ড্র

            // রেকটাঙ্গল ড্র করা
            contentStream.setLineWidth(2f);
            contentStream.setStrokingColor(0, 0, 255);  // নীল রঙ
            contentStream.rectangle(100, 600, 150, 50);  // x, y, width, height
            contentStream.stroke();

            // বৃত্ত ড্র করা
            contentStream.setLineWidth(1f);
            contentStream.setStrokingColor(255, 0, 0);  // লাল রঙ
            contentStream.circle(200, 500, 30);  // x, y, radius
            contentStream.stroke();

            // কনটেন্ট স্ট্রিম বন্ধ করা
            contentStream.close();

            // পিডিএফ ডকুমেন্ট সংরক্ষণ
            document.save("pdf_with_graphics_example.pdf");

            // ডকুমেন্ট বন্ধ করা
            document.close();

            System.out.println("PDF successfully created with graphics!");

        } catch (IOException e) {
            System.err.println("Error while creating PDF with graphics: " + e.getMessage());
        }
    }
}

কোডের ব্যাখ্যা

  • PDDocument: পিডিএফ ডকুমেন্ট তৈরি করতে ব্যবহৃত অবজেক্ট।
  • PDPage: পিডিএফ পেজ, যেখানে গ্রাফিক্স এবং টেক্সট যোগ করা হবে।
  • PDPageContentStream: এই অবজেক্টটি পিডিএফ পেজের কনটেন্ট স্ট্রিম, যা গ্রাফিক্স (লাইন, রেকটাঙ্গল, বৃত্ত) এবং টেক্সট যোগ করার জন্য ব্যবহৃত হয়।
  • moveTo() এবং lineTo(): লাইন ড্র করার জন্য ব্যবহৃত ফাংশন। moveTo() শুরুর পয়েন্ট এবং lineTo() শেষ পয়েন্ট নির্ধারণ করে।
  • rectangle(): একটি রেকটাঙ্গল ড্র করার জন্য ব্যবহৃত ফাংশন।
  • circle(): একটি বৃত্ত ড্র করার জন্য ব্যবহৃত ফাংশন।
  • setStrokingColor(): গ্রাফিক্সের রঙ সেট করতে ব্যবহৃত ফাংশন।

পিডিএফ সংরক্ষণ

document.save("pdf_with_graphics_example.pdf"); এর মাধ্যমে পিডিএফ ফাইলটি "pdf_with_graphics_example.pdf" নামে সংরক্ষণ করা হবে।


এভাবে পিডিএফবক্স ব্যবহার করে পিডিএফ ডকুমেন্টে গ্রাফিক্স যোগ করা সম্ভব। আপনি লাইন, রেকটাঙ্গল, বৃত্ত ইত্যাদি যোগ করে আপনার পিডিএফ ডকুমেন্টকে ভিজ্যুয়ালি আকর্ষণীয় করে তুলতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...