जावा का उपयोग करके पीडीएफ दस्तावेज़ में फ़ॉर्म फ़ील्ड जोड़ें

परिचय

पीडीएफ दस्तावेज़ में फ़ॉर्म फ़ील्ड जोड़ने से उपयोगकर्ताओं को सीधे दस्तावेज़ में डेटा इनपुट करने की अनुमति देकर इसकी कार्यक्षमता बढ़ जाती है। यह विभिन्न उद्देश्यों के लिए अविश्वसनीय रूप से उपयोगी हो सकता है, जैसे कि उपयोगकर्ता द्वारा तैयार की गई सामग्री के साथ भरने योग्य फ़ॉर्म, सर्वेक्षण या रिपोर्ट बनाना।

हम जावा के लिए Aspose.PDF का उपयोग करेंगे, जो एक शक्तिशाली लाइब्रेरी है जो जावा अनुप्रयोगों में पीडीएफ हेरफेर को सरल बनाती है। Aspose.PDF के साथ, आप आसानी से पीडीएफ दस्तावेज़ बना सकते हैं, संशोधित कर सकते हैं और हेरफेर कर सकते हैं, जिसमें गतिशील रूप से फ़ॉर्म फ़ील्ड जोड़ना शामिल है।

वातावरण की स्थापना

इससे पहले कि हम कोड में आगे बढ़ें, आपको अपना डेवलपमेंट एनवायरनमेंट सेट अप करना होगा। इन चरणों का पालन करें:

  1. Java के लिए Aspose.PDF डाउनलोड करें: Aspose वेबसाइट पर जाएँ और Java के लिए Aspose.PDF का नवीनतम संस्करण डाउनलोड करें। आप इसे यहाँ पा सकते हैंयहाँ.

  2. Aspose.PDF स्थापित करें: डाउनलोड करने के बाद, वेबसाइट पर दिए गए स्थापना निर्देशों का पालन करके Aspose.PDF स्थापित करें।

  3. जावा प्रोजेक्ट बनाएं: अपने पसंदीदा एकीकृत विकास वातावरण (IDE) में एक नया जावा प्रोजेक्ट बनाएं और अपने प्रोजेक्ट में Aspose.PDF लाइब्रेरी शामिल करें।

नया PDF दस्तावेज़ बनाना

आइए एक नया PDF दस्तावेज़ बनाकर शुरू करें। इस उदाहरण में, हम एक शीर्षक और कुछ निर्देशों के साथ एक सरल PDF फ़ाइल बनाएंगे।

// Aspose.PDF लाइब्रेरी आयात करें
import com.aspose.pdf.*;

public class AddFormFieldPDF {
    public static void main(String[] args) {
        // एक नया PDF दस्तावेज़ बनाएँ
        Document doc = new Document();

        // दस्तावेज़ में एक पृष्ठ जोड़ें
        Page page = doc.getPages().add();

        // शीर्षक जोड़ें
        TextFragment title = new TextFragment("Feedback Form");
        title.getTextState().setFontSize(18);
        title.getTextState().setFont(FontRepository.findFont("Arial"));
        page.getParagraphs().add(title);

        // निर्देश जोड़ें
        TextFragment instructions = new TextFragment("Please provide your feedback below:");
        instructions.getTextState().setFontSize(12);
        page.getParagraphs().add(instructions);

        // दस्तावेज़ को फ़ाइल में सहेजें
        doc.save("FeedbackForm.pdf");
    }
}

इस कोड स्निपेट में, हम एक नया पीडीएफ दस्तावेज़ बनाते हैं, एक पृष्ठ जोड़ते हैं, और एक शीर्षक और कुछ निर्देश सम्मिलित करते हैं।

फॉर्म फ़ील्ड जोड़ना

अब, आइए अपने PDF दस्तावेज़ में फ़ॉर्म फ़ील्ड जोड़ने की ओर बढ़ें। हम एक इंटरैक्टिव फ़ीडबैक फ़ॉर्म बनाने के लिए टेक्स्ट फ़ील्ड, चेकबॉक्स और रेडियो बटन शामिल करेंगे।

पाठ क्षेत्र

टेक्स्ट फ़ील्ड उपयोगकर्ताओं को टेक्स्ट इनपुट करने की अनुमति देते हैं। यहां बताया गया है कि आप टेक्स्ट फ़ील्ड कैसे जोड़ सकते हैं:

// एक टेक्स्ट फ़ील्ड बनाएँ
TextField textField = new TextField(page, new Rectangle(100, 300, 200, 20));
textField.getPdfObject().setBorderStyle(new BorderStyle(1)); // बॉर्डर शैली सेट करें
textField.setPartialName("txtName"); // फ़ील्ड नाम सेट करें
textField.setMultiline(false); // मल्टीलाइन अक्षम करें
page.getAnnotations().add(textField);

चेक बॉक्स

चेकबॉक्स का उपयोग बाइनरी विकल्पों (जैसे, हाँ/नहीं प्रश्न) के लिए किया जाता है। चेकबॉक्स जोड़ने का तरीका इस प्रकार है:

// एक चेकबॉक्स बनाएं
CheckboxField checkboxField = new CheckboxField(page, new Rectangle(100, 250, 20, 20));
checkboxField.setPartialName("chkAgree"); // फ़ील्ड नाम सेट करें
checkboxField.setChecked(false); // प्रारंभ में अनियंत्रित
page.getAnnotations().add(checkboxField);

रेडियो के बटन

रेडियो बटन का उपयोग तब किया जाता है जब उपयोगकर्ताओं को किसी समूह से एक विकल्प चुनने की आवश्यकता होती है। प्रत्येक विकल्प एक अलग रेडियो बटन है, लेकिन वे एक ही समूह से संबंधित हैं। रेडियो बटन जोड़ने का तरीका यहां बताया गया है:

// रेडियो बटन बनाएं
RadioButtonOptionField option1 = new RadioButtonOptionField(page, new Rectangle(100, 200, 20, 20));
RadioButtonOptionField option2 = new RadioButtonOptionField(page, new Rectangle(100, 180, 20, 20));
option1.setPartialName("optYes"); // विकल्प 1 के लिए फ़ील्ड नाम सेट करें
option2.setPartialName("optNo"); // विकल्प 2 के लिए फ़ील्ड नाम सेट करें

//रेडियो बटन समूह में विकल्प जोड़ें
RadioButtonOptionField[] options = {option1, option2};
RadioButtonField radioButtonField = new RadioButtonField(page, options);
page.getAnnotations().add(radioButtonField);

इन कोड उदाहरणों के साथ, आप अपने PDF दस्तावेज़ में टेक्स्ट फ़ील्ड, चेकबॉक्स और रेडियो बटन जोड़ सकते हैं। फ़ील्ड नाम और डिफ़ॉल्ट मान जैसे उनके गुणों को आवश्यकतानुसार अनुकूलित करना सुनिश्चित करें।

फॉर्म फ़ील्ड को अनुकूलित करना

फ़ॉर्म फ़ील्ड को कस्टमाइज़ करने से आप उनके स्वरूप और व्यवहार को नियंत्रित कर सकते हैं। आप फ़ॉन्ट आकार, टेक्स्ट रंग, बॉर्डर शैली और बहुत कुछ जैसे गुण बदल सकते हैं।

फ़ील्ड गुण बदलना

मान लीजिए कि आप किसी टेक्स्ट फ़ील्ड का फ़ॉन्ट आकार और टेक्स्ट रंग बदलना चाहते हैं:

textField.getTextState().setFontSize(14);
textField.getTextState().setForegroundColor(Color.getGreen());

फ़ील्ड सत्यापन

आप फ़ॉर्म फ़ील्ड के लिए सत्यापन नियम भी सेट कर सकते हैं। उदाहरण के लिए, आप उपयोगकर्ताओं को टेक्स्ट फ़ील्ड में एक मान्य ईमेल पता दर्ज करने के लिए बाध्य कर सकते हैं:

textField.getValidation().add(ValidationType.EMAIL);

फ़ील्ड मान सेट करना

फ़ॉर्म फ़ील्ड को डेटा से पहले से भरने के लिए, आप उनके डिफ़ॉल्ट मान प्रोग्रामेटिक रूप से सेट कर सकते हैं। यह टेम्प्लेट बनाने या ज्ञात जानकारी को पहले से भरने के लिए उपयोगी है।

textField.setValue("John Doe"); // टेक्स्ट फ़ील्ड के लिए डिफ़ॉल्ट मान सेट करें
checkboxField.setChecked(true); // डिफ़ॉल्ट रूप से चेकबॉक्स को चेक करें

फॉर्म जमा करना और सत्यापन

फॉर्म फ़ील्ड जोड़ना केवल आधी कहानी है; आप यह भी चाहेंगे

फॉर्म जमा करने और सत्यापन को सक्षम करने के लिए।

फॉर्म जमा करना

उपयोगकर्ताओं को फ़ॉर्म डेटा सबमिट करने की अनुमति देने के लिए, आपको कोई कार्रवाई निर्दिष्ट करनी होगी, जैसे ईमेल भेजना या वेब सर्वर पर सबमिट करना। सबमिट बटन सेट अप करने का एक उदाहरण यहां दिया गया है:

ButtonField submitButton = new ButtonField(page, new Rectangle(100, 50, 80, 30));
submitButton.getPdfObject().setBorderStyle(new BorderStyle(1));
submitButton.getActions().getOnPushButton().add(new SubmitFormAction("https://yourserver.com/submit", सबमिटफर्मएक्शनटइप.URL, "फीडबैकफॉर्म.pdf"));
page.getAnnotations().add(submitButton);

फॉर्म सत्यापन

सत्यापन सुनिश्चित करता है कि उपयोगकर्ता इनपुट विशिष्ट मानदंडों को पूरा करता है। उदाहरण के लिए, आप किसी फ़ोन नंबर फ़ील्ड को केवल नंबर स्वीकार करने के लिए सत्यापित कर सकते हैं:

textField.getValidation().add(ValidationType.NUMBER);

सहेजना और निर्यात करना

एक बार जब आप अपना PDF दस्तावेज़ बना लेते हैं और उसे फ़ॉर्म फ़ील्ड के साथ कस्टमाइज़ कर लेते हैं, तो उसे सेव या एक्सपोर्ट करने का समय आ जाता है। Aspose.PDF इसके लिए कई विकल्प प्रदान करता है।

स्थानीय फ़ाइल में सहेजें

पीडीएफ दस्तावेज़ को स्थानीय फ़ाइल में सहेजने के लिए, निम्नलिखित कोड का उपयोग करें:

doc.save("FeedbackForm.pdf");

स्ट्रीम में सहेजें

पीडीएफ दस्तावेज़ को स्ट्रीम में सहेजने के लिए, आप इसका उपयोग कर सकते हैंOutputStream कक्षा:

OutputStream outputStream = new FileOutputStream("FeedbackForm.pdf");
doc.save(outputStream);
outputStream.close();

निष्कर्ष

इस विस्तृत गाइड में, हमने Java और Aspose.PDF for Java का उपयोग करके PDF दस्तावेज़ में फ़ॉर्म फ़ील्ड जोड़ने का तरीका खोजा है। आपने सीखा है कि टेक्स्ट फ़ील्ड, चेकबॉक्स और रेडियो बटन कैसे बनाएँ, उनके गुणों को कस्टमाइज़ करें, डिफ़ॉल्ट मान सेट करें, फ़ॉर्म सबमिशन और सत्यापन सक्षम करें, और PDF दस्तावेज़ को सहेजें/निर्यात करें।

पूछे जाने वाले प्रश्न

मैं पीडीएफ फॉर्म में ड्रॉपडाउन सूची कैसे सेट कर सकता हूं?

पीडीएफ फॉर्म में ड्रॉपडाउन सूची (कॉम्बो बॉक्स) बनाने के लिए, आप इसका उपयोग कर सकते हैंComboBoxField जावा के लिए Aspose.PDF द्वारा प्रदान की गई क्लास। अन्य फ़ॉर्म फ़ील्ड के लिए दिखाए गए समान दृष्टिकोण का पालन करें, और विकल्पों को कस्टमाइज़ करने के लिए निम्न का उपयोग करें:AddItem विधि। आप इस पर विस्तृत दस्तावेज़ Aspose वेबसाइट पर पा सकते हैं।

क्या Aspose.PDF for Java अन्य Java लाइब्रेरीज़ और फ्रेमवर्क के साथ संगत है?

हां, Aspose.PDF for Java विभिन्न Java लाइब्रेरी और फ्रेमवर्क के साथ संगत है। आप इसे अपने Java अनुप्रयोगों में एकीकृत कर सकते हैं, चाहे आप Spring, JavaFX या अन्य लोकप्रिय फ्रेमवर्क का उपयोग कर रहे हों। विशिष्ट एकीकरण दिशानिर्देशों के लिए दस्तावेज़ और संसाधनों की जांच करना सुनिश्चित करें।

क्या मैं Java के लिए Aspose.PDF के साथ बनाए गए PDF फॉर्म को पासवर्ड से सुरक्षित कर सकता हूँ?

बिलकुल! Aspose.PDF for Java आपको अपने PDF दस्तावेज़ों में पासवर्ड सुरक्षा जोड़ने की अनुमति देता है, जिसमें फ़ॉर्म भी शामिल हैं। आप पहुँच और अनुमतियों को प्रतिबंधित करने के लिए उपयोगकर्ता-स्तर और स्वामी-स्तर दोनों पासवर्ड सेट कर सकते हैं। इस सुरक्षा सुविधा को लागू करने के तरीके के बारे में विस्तृत निर्देशों के लिए दस्तावेज़ देखें।

मैं पीडीएफ फॉर्म के माध्यम से प्रस्तुत डेटा कैसे निकाल सकता हूं?

PDF फ़ॉर्म के ज़रिए सबमिट किए गए डेटा को निकालने के लिए, आपको अपने सर्वर या एप्लिकेशन बैकएंड पर फ़ॉर्म सबमिशन को हैंडल करना होगा। जब कोई उपयोगकर्ता फ़ॉर्म सबमिट करता है, तो आप डेटा प्राप्त कर सकते हैं और उसे आवश्यकतानुसार प्रोसेस कर सकते हैं। Aspose.PDF सर्वर साइड पर PDF दस्तावेज़ से प्रोग्रामेटिक रूप से फ़ॉर्म डेटा निकालने के लिए टूल प्रदान करता है।

क्या मैं उपयोगकर्ता इनपुट के आधार पर गतिशील रूप से पीडीएफ फॉर्म तैयार कर सकता हूं?

हां, आप जावा के लिए Aspose.PDF का उपयोग करके उपयोगकर्ता इनपुट के आधार पर गतिशील रूप से PDF फ़ॉर्म जेनरेट कर सकते हैं। उपयोगकर्ता इनपुट या एप्लिकेशन लॉजिक के आधार पर, आप अलग-अलग फ़ॉर्म फ़ील्ड और लेआउट के साथ PDF दस्तावेज़ बना सकते हैं। यह लचीलापन विशिष्ट उपयोगकर्ता आवश्यकताओं या परिदृश्यों के अनुरूप अनुकूलित फ़ॉर्म जेनरेट करना संभव बनाता है।