जावा में QR कोड उत्पन्न करें: पूर्ण QR कोड साइनिंग गाइड
इस ट्यूटोरियल में आप सीखेंगे कि कैसे generate qr code java हस्ताक्षर PDF दस्तावेज़ों में GroupDocs.Signature for Java का उपयोग करके बनाएँ। हम QR कोड जोड़ने, उन्हें सटीक रूप से स्थित करने, और अधिकांश डेवलपर्स को फँसाने वाली कठिनाइयों से बचने के बारे में बताएँगे। चाहे आप एक अनुबंध‑प्रबंधन प्लेटफ़ॉर्म बना रहे हों या एक सुरक्षित इनवॉइस पाइपलाइन, यह गाइड आपको उत्पादन‑तैयार समाधान देता है।
त्वरित उत्तर
- जावा में QR कोड हस्ताक्षर जोड़ने वाली लाइब्रेरी कौन सी है? GroupDocs.Signature for Java
- कौन सा बिल्ड टूल Maven निर्भरता का समर्थन करता है? Maven (देखें maven dependency groupdocs)
- क्या मैं विशिष्ट पृष्ठों पर QR कोड स्थित कर सकता हूँ? हाँ, संरेखण और पृष्ठ‑संख्या विकल्पों का उपयोग करके
- उत्पादन के लिए लाइसेंस चाहिए? हाँ, एक व्यावसायिक GroupDocs लाइसेंस आवश्यक है
- हस्ताक्षर के बाद QR कोड स्कैन करने योग्य है? बिल्कुल, जब आकार ≥ 100 × 100 px हो और उचित मार्जिन के साथ रखा गया हो
आप क्या सीखेंगे
- अपने जावा प्रोजेक्ट में QR कोड साइनिंग सेट अप करें (Maven, Gradle, या प्रत्यक्ष डाउनलोड)
- दस्तावेज़ों में सटीक स्थितियों पर QR कोड जोड़ें (कोनों, केंद्र, कस्टम संरेखण)
- सामान्य कार्यान्वयन समस्याओं को संभालें इससे पहले कि वे उत्पादन समस्याएँ बनें
- उच्च‑थ्रूपुट दस्तावेज़ वर्कफ़्लो के लिए प्रदर्शन को अनुकूलित करें
- इन तकनीकों को वास्तविक‑विश्व व्यापार परिदृश्यों में लागू करें
पूर्वापेक्षाएँ
- GroupDocs.Signature for Java – संस्करण 23.12 या बाद का (हम नीचे इंस्टॉलेशन कवर करेंगे)
- Java Development Kit – JDK 8 या उससे ऊपर (अधिकांश उत्पादन वातावरण JDK 11+ उपयोग करते हैं)
- बिल्ड टूल – निर्भरता प्रबंधन के लिए Maven या Gradle
- बुनियादी जावा ज्ञान – try‑catch ब्लॉक्स और फ़ाइल‑पाथ हैंडलिंग में सहज
यदि आप GroupDocs में नए हैं तो चिंता न करें—हम सब कुछ चरण‑दर‑चरण समझाएँगे।
अपना वातावरण सेटअप करना
GroupDocs.Signature को अपने प्रोजेक्ट में लाना सरल है। वह विधि चुनें जो आपके बिल्ड सिस्टम से मेल खाती हो।
Maven का उपयोग करना
अपने pom.xml फ़ाइल में यह maven dependency groupdocs जोड़ें:
```xml
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-signature</artifactId>
<version>23.12</version>
</dependency>
इसे जोड़ने के बाद, लाइब्रेरी डाउनलोड करने के लिए `mvn clean install` चलाएँ।
### Gradle का उपयोग करना
Gradle प्रोजेक्ट्स के लिए, अपने `build.gradle` में यह पंक्ति जोड़ें:
implementation 'com.groupdocs:groupdocs-signature:23.12'
फिर अपने प्रोजेक्ट को `gradle build` के साथ सिंक करें।
### प्रत्यक्ष डाउनलोड विकल्प
क्या आप मैन्युअल इंस्टॉलेशन पसंद करते हैं? JAR को सीधे [GroupDocs.Signature for Java रिलीज़](https://releases.groupdocs.com/signature/java/) से डाउनलोड करें और इसे अपने प्रोजेक्ट की क्लासपाथ में जोड़ें।
### लाइसेंस सेटअप (महत्वपूर्ण!)
यहाँ एक बात है जो लोगों को आश्चर्यचकित करती है: उत्पादन उपयोग के लिए GroupDocs को लाइसेंस चाहिए। विकल्प:
- **Free Trial** – पूर्ण सुविधाएँ, सीमित समय
- **Temporary License** – अधिक समय चाहिए? विस्तारित परीक्षण के लिए एक [अस्थायी लाइसेंस](https://purchase.groupdocs.com/temporary-license/) प्राप्त करें
- **Commercial License** – उत्पादन परिनियोजन के लिए, [लाइसेंस खरीदें](https://purchase.groupdocs.com/buy) प्राप्त करें
ट्रायल संस्करण में वॉटरमार्क जोड़ता है, इसलिए डेमो के लिए उचित योजना बनाएँ।
## बुनियादी आरंभिककरण
`Signature` GroupDocs.Signature for Java में मुख्य एंट्री‑पॉइंट क्लास है जो दस्तावेज़ों को लोड और हस्ताक्षर के लिए बदलता है। लाइब्रेरी इंस्टॉल करने के बाद, इसे आरंभ करना उतना ही सरल है जितना कि इसे आपके दस्तावेज़ की ओर इंगित करना:
String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
Signature signature = new Signature(filePath);
यह एक `Signature` ऑब्जेक्ट बनाता है जो काम करने के लिए तैयार है।
## QR कोड हस्ताक्षर को समझना
एक QR कोड हस्ताक्षर सत्यापन योग्य डेटा—जैसे टाइमस्टैम्प, हस्ताक्षरकर्ता पहचान, या सत्यापन URLs—को दस्तावेज़ के भीतर एक स्कैन योग्य QR छवि में एम्बेड करता है। स्कैन करने पर, QR कोड उपयोगकर्ता को एक सत्यापन पोर्टल की ओर ले जाता है या एम्बेडेड मेटाडेटा दिखाता है, जिससे विशेष सॉफ़्टवेयर के बिना तेज़ मोबाइल सत्यापन संभव होता है।
**आपको QR कोड हस्ताक्षर कब उपयोग करना चाहिए?**
- तेज़ मोबाइल सत्यापन (फ़ोन से स्कैन करें)
- भौतिक प्रतियां जो प्रिंट की जा सकती हैं
- सत्यापन पोर्टलों के लिंक एम्बेड करना
- ऑफ़लाइन सत्यापन वर्कफ़्लो का समर्थन करना
## कार्यान्वयन गाइड: QR कोड हस्ताक्षर जोड़ना
यह वह जगह है जहाँ कोड व्यावहारिक हो जाता है। हम एक PDF पर विभिन्न स्थानों पर QR कोड स्थित करके हस्ताक्षर करेंगे।
### स्थिति क्यों महत्वपूर्ण है
उचित स्थिति सुनिश्चित करती है कि QR कोड आसानी से स्कैन हो सके, कानूनी मानकों का पालन करे, और महत्वपूर्ण दस्तावेज़ सामग्री को छुपाए नहीं। अनुबंधों के लिए, नीचे‑दाएँ सामान्य है; इनवॉइस के लिए, ऊपर‑दाएँ सबसे अच्छा काम करता है; प्रमाणपत्रों के लिए, नीचे केंद्रित एक साफ़ लुक देता है।
### चरण‑दर‑चरण कार्यान्वयन
#### 1. अपनी फ़ाइल पथ कॉन्फ़िगर करें
परिभाषित करें कि आपका स्रोत दस्तावेज़ कहाँ है और साइन किया हुआ संस्करण कहाँ सहेजना है:
String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
String fileName = Paths.get(filePath).getFileName().toString();
String outputFilePath = new File("YOUR_OUTPUT_DIRECTORY", "SignWithAlignment/" + fileName).getPath();
**प्रो टिप:** फ़ाइल पथों के लिए स्ट्रिंग संयोजन के बजाय `Paths.get()` का उपयोग करें—यह स्वचालित रूप से OS‑विशिष्ट विभाजकों को संभालता है।
#### 2. सिग्नेचर ऑब्जेक्ट को आरंभ करें
संभावित फ़ाइल‑एक्सेस समस्याओं को संभालने के लिए अपनी आरंभिककरण को एक try‑catch ब्लॉक में रखें:
try {
Signature signature = new Signature(filePath);
// Signing logic goes here...
} catch (Exception e) {
throw new RuntimeException("Error initializing signature: " + e.getMessage(), e);
}
`RuntimeException` डिबगिंग के समय संदर्भ जोड़ता है, जो उत्पादन में समय बचाता है।
#### 3. QR कोड आकार और स्थितियों को परिभाषित करें
`QrCodeSignOptions` दस्तावेज़ पर रखे जाने वाले QR इमेज को कॉन्फ़िगर करता है। यह आपको आकार, मार्जिन, और संरेखण सेट करने देता है।
int qrWidth = 100;
int qrHeight = 100;
List<SignOptions> listOptions = new ArrayList<>();
for (int horizontalAlignment : HorizontalAlignment.getValues()) {
for (int verticalAlignment : VerticalAlignment.getValues()) {
if (verticalAlignment != VerticalAlignment.None && horizontalAlignment != HorizontalAlignment.None) {
QrCodeSignOptions options = new QrCodeSignOptions("Left-Top");
options.setWidth(qrWidth);
options.setHeight(qrHeight);
options.setHorizontalAlignment(horizontalAlignment);
options.setVerticalAlignment(verticalAlignment);
options.setMargin(new Padding(5));
listOptions.add(options);
}
}
}
यह लूप प्रत्येक क्षैतिज (Left, Center, Right) और लंबवत (Top, Center, Bottom) संरेखण के लिए QR कोड विकल्प बनाता है, 5‑पिक्सेल मार्जिन जोड़ता है ताकि कोड कभी पृष्ठ किनारे को न छुए।
अधिकांश उत्पादन परिदृश्यों में आप एक ही स्थिति चुनेंगे, जैसे अनुबंधों के लिए नीचे‑दाएँ:
QrCodeSignOptions options = new QrCodeSignOptions("Signature");
options.setWidth(100);
options.setHeight(100);
options.setHorizontalAlignment(HorizontalAlignment.Right);
options.setVerticalAlignment(VerticalAlignment.Bottom);
options.setMargin(new Padding(10));
#### 4. दस्तावेज़ पर हस्ताक्षर करें
अब हम सभी कॉन्फ़िगर किए गए हस्ताक्षर एक ही ऑपरेशन में लागू करते हैं:
SignResult signResult = signature.sign(outputFilePath, listOptions);
`sign()` मेथड सूची में प्रत्येक QR कोड को प्रोसेस करता है और परिणाम को आपके आउटपुट पथ पर सहेजता है। यह एक `SignResult` ऑब्जेक्ट लौटाता है जो बताता है कि कितने हस्ताक्षर सफलतापूर्वक जोड़े गए—लॉगिंग के लिए उत्तम।
**प्रदर्शन नोट:** साइनिंग सिंक्रोनस है। उच्च‑वॉल्यूम कार्यभार (प्रति घंटे सैकड़ों दस्तावेज़) के लिए इसे उपयोगकर्ता‑सामना अनुरोध के बजाय बैकग्राउंड जॉब कतार में चलाएँ।
## सामान्य कठिनाइयाँ और समाधान
### समस्या 1: "फ़ाइल नहीं मिली" त्रुटियाँ
**लक्षण:** फ़ाइल‑नहीं‑मिली अपवाद जबकि फ़ाइल मौजूद है।
**समाधान:** तीन चीज़ें जाँचें:
1. परम पथ (absolute paths) का उपयोग करें या सुनिश्चित करें कि कार्य निर्देशिका सही है।
2. स्रोत के लिए पढ़ने की अनुमति और आउटपुट फ़ोल्डर के लिए लिखने की अनुमति की पुष्टि करें।
3. पथ में किसी भी विशेष अक्षर को एस्केप करें।
// Better approach: Use absolute paths
String absolutePath = new File(filePath).getAbsolutePath();
Signature signature = new Signature(absolutePath);
### समस्या 2: QR कोड दस्तावेज़ सामग्री के साथ ओवरलैप होते हैं
**लक्षण:** QR कोड महत्वपूर्ण टेक्स्ट को कवर करते हैं या पृष्ठ किनारों पर कट जाते हैं।
**समाधान:** मार्जिन मान बढ़ाएँ और ऐसे संरेखण चुनें जो कोड को खाली क्षेत्रों में रखें:
options.setMargin(new Padding(20)); // Increase from 5 to 20 pixels
### समस्या 3: बड़े दस्तावेज़ों में मेमोरी समस्याएँ
**लक्षण:** 10 MB से बड़े PDFs प्रोसेस करते समय `OutOfMemoryError`।
**समाधान:** `Signature` ऑब्जेक्ट को तुरंत डिस्पोज़ करें और बड़े फ़ाइलों को बैच में प्रोसेस करें:
try (Signature signature = new Signature(filePath)) {
// Your signing code
} // Automatically closes and releases resources
### समस्या 4: QR कोड सामग्री अपडेट नहीं हो रही है
**लक्षण:** सभी QR कोड एक ही टेक्स्ट दिखाते हैं जबकि उन्हें अनुकूलित करने की कोशिश की गई।
**समाधान:** प्रत्येक स्थिति के लिए एक **नया** `QrCodeSignOptions` इंस्टेंस बनाएँ, बजाय एक ही ऑब्जेक्ट को पुन: उपयोग करने के।
// Wrong - reuses same object
QrCodeSignOptions options = new QrCodeSignOptions("Text");
options.setHorizontalAlignment(HorizontalAlignment.Left);
listOptions.add(options);
options.setHorizontalAlignment(HorizontalAlignment.Right); // Modifies existing!
listOptions.add(options);
// Correct - creates new object each time
listOptions.add(new QrCodeSignOptions("Left"));
listOptions.add(new QrCodeSignOptions("Right"));
## व्यावहारिक अनुप्रयोग
### 1. अनुबंध प्रबंधन प्रणाली
वर्कफ़्लो: अनुबंध PDF उत्पन्न करें → अनुबंध ID, टाइमस्टैम्प, हस्ताक्षरकर्ता हैश वाला QR कोड जोड़ें → सुरक्षित रूप से संग्रहीत करें → उपयोगकर्ता QR स्कैन करता है → पोर्टल अनुबंध विवरण दिखाता है। यह कानूनी टीमों को प्रिंटेड प्रतियों से तुरंत प्रामाणिकता सत्यापित करने देता है।
### 2. इनवॉइस प्रोसेसिंग ऑटोमेशन
प्रत्येक प्रोसेस किए गए इनवॉइस में ऊपर‑दाएँ QR कोड जोड़ें जिसमें इनवॉइस नंबर, विक्रेता ID, और प्रोसेसिंग टाइमस्टैम्प एन्कोड हो। सुसंगत स्थान स्वचालित स्कैनर को कोड जल्दी खोजने में मदद करता है, जिससे ऑडिट गति में सुधार होता है।
### 3. दस्तावेज़ प्रमाणन
प्रमाणपत्रों के नीचे केंद्र में एक QR कोड रखें जिसमें सत्यापन URL और प्रमाणपत्र ID हो। प्राप्तकर्ता स्कैन करके प्रमाणपत्र की पुष्टि कर सकते हैं, और गैर‑मोबाइल उपयोगकर्ताओं के लिए एक प्रिंटेड URL भी प्रदान किया जाता है।
### 4. आंतरिक दस्तावेज़ ट्रैकिंग
बहु‑स्तरीय अनुमोदनों के दौरान, प्रत्येक साइन‑ऑफ़ के बाद एक QR कोड एम्बेड करें जिसमें अनुमोदक ID, टाइमस्टैम्प, और संस्करण हो। स्कैन करने पर पूरी अनुमोदन इतिहास दिखता है, जो अनुपालन ऑडिट को संतुष्ट करता है।
## उत्पादन सर्वोत्तम प्रथाएँ
### संसाधन प्रबंधन
सदैव `Signature` ऑब्जेक्ट को बंद करें ताकि मेमोरी लीक न हो:
try (Signature signature = new Signature(filePath)) {
// Your code
} // Auto‑closes
वेब ऐप्स के लिए एक प्रोसेसिंग पूल पर विचार करें ताकि समवर्ती ऑपरेशनों को सीमित किया जा सके।
### त्रुटि प्रबंधन रणनीति
चुपचाप पकड़ने के बजाय उपयोगी त्रुटि जानकारी प्रदान करें:
try {
SignResult result = signature.sign(outputFilePath, listOptions);
if (result.getSucceeded().size() < listOptions.size()) {
logger.warn("Only {} of {} signatures applied",
result.getSucceeded().size(),
listOptions.size());
}
} catch (Exception e) {
logger.error("Signature failed for document: {}", filePath, e);
// Implement retry logic or alert mechanism
}
### प्रदर्शन अनुकूलन
उच्च‑थ्रूपुट वातावरण के लिए:
1. बैच प्रोसेसिंग – दस्तावेज़ों को समानांतर में प्रोसेस करें, लेकिन RAM के आधार पर समवर्तीता को सीमित रखें।
2. कैशिंग – समान `QrCodeSignOptions` ऑब्जेक्ट को कई दस्तावेज़ों में पुन: उपयोग करें।
3. असिंक्रोनस ऑपरेशन – प्रतिक्रियाशील API के लिए साइनिंग को बैकग्राउंड वर्कर में ले जाएँ।
4. मेमोरी मॉनिटरिंग – स्पाइक के लिए अलर्ट सेट करें और बैच आकार को तदनुसार ट्यून करें।
### सुरक्षा विचार
- साइन किए हुए दस्तावेज़ों को मूल से अलग संग्रहीत करें।
- ऑडिट ट्रेल के लिए प्रत्येक साइनिंग ऑपरेशन को लॉग करें।
- साइनिंग एंडपॉइंट्स के आसपास कड़े एक्सेस कंट्रोल लागू करें।
- आवश्यक होने पर संवेदनशील QR पेलोड को एन्क्रिप्ट करें।
## जब QR कोड हस्ताक्षर उपयोग करें (और कब नहीं)
**जब QR कोड हस्ताक्षर उपयोग करें:**
- मोबाइल‑अनुकूल सत्यापन आवश्यक है।
- दस्तावेज़ प्रिंट और पुनः‑स्कैन किए जा सकते हैं।
- आपको सत्यापन URLs या IDs एम्बेड करने की आवश्यकता है।
- ऑफ़लाइन सत्यापन वर्कफ़्लो प्रक्रिया का हिस्सा हैं।
**जब QR कोड हस्ताक्षर से बचें:**
- कानूनी रूप से बाध्यकारी PKI हस्ताक्षर अनिवार्य है (इसके बजाय क्रिप्टोग्राफ़िक हस्ताक्षर उपयोग करें)।
- प्रिंटिंग के दौरान QR कोड क्षतिग्रस्त या छिपे हो सकते हैं।
- आपका सत्यापन सिस्टम पूरी तरह ऑफ़लाइन है।
- दस्तावेज़ आकार एक महत्वपूर्ण प्रतिबंध है (प्रत्येक QR कोड लगभग 5‑20 KB जोड़ता है)।
**सर्वोत्तम प्रथा:** कानूनी वैधता और तेज़ मोबाइल सत्यापन दोनों के लिए क्रिप्टोग्राफ़िक हस्ताक्षर को QR कोड के साथ संयोजित करें।
## समस्या निवारण गाइड
### हस्ताक्षर नहीं दिख रहा है
1. सुनिश्चित करें कि आउटपुट फ़ाइल वास्तव में बनाई गई है।
2. पुष्टि करें कि आप सही आउटपुट फ़ाइल खोल रहे हैं।
3. `SignResult` में सफलता की संख्या जाँचें।
4. सुनिश्चित करें कि संरेखण और मार्जिन मान QR कोड को पृष्ठ से बाहर नहीं धकेल रहे हैं।
### QR कोड स्कैन नहीं हो रहा है
- QR आकार ≥ 100 × 100 px रखें।
- उच्च कंट्रास्ट उपयोग करें (हल्के पृष्ठभूमि पर गहरा कोड)।
- विश्वसनीय स्कैनिंग के लिए एन्कोडेड डेटा को < 100 अक्षरों तक सीमित रखें।
- भौतिक प्रतियों के लिए ≥ 300 dpi पर प्रिंट करें।
### प्रदर्शन गिरावट
- प्रति दस्तावेज़ QR कोड की संख्या घटाएँ।
- संभव हो तो `Signature` इंस्टेंस पुन: उपयोग करें।
- मेमोरी उपयोग प्रोफ़ाइल करें; छोटे बैच में प्रोसेस करने पर विचार करें।
## अक्सर पूछे जाने वाले प्रश्न
**प्र:** *क्या मैं PDFs के अलावा अन्य दस्तावेज़ों पर हस्ताक्षर कर सकता हूँ?*
**उ:** हाँ। GroupDocs.Signature Word (DOC/DOCX), Excel (XLS/XLSX), PowerPoint (PPT/PPTX), और इमेज फॉर्मैट (JPG, PNG, TIFF) को समर्थन देता है। API सभी समर्थित प्रकारों में समान रहता है।
**प्र:** *मैं QR कोड की उपस्थिति को कैसे अनुकूलित करूँ?*
**उ:** `QrCodeSignOptions` की प्रॉपर्टीज़ जैसे `setForeColor()`, `setBackgroundColor()`, और `setBorder()` का उपयोग करें। स्कैन करने की क्षमता बनाए रखने के लिए अनुकूलन सरल रखें।
**प्र:** *क्या मैं बहु‑पृष्ठ दस्तावेज़ में विशिष्ट पृष्ठों पर QR कोड जोड़ सकता हूँ?*
**उ:** बिल्कुल। पृष्ठ संख्या `options.setPageNumber(pageNumber);` से सेट करें। उदाहरण:
options.setPageNumber(1); // Add to first page only
**प्र:** *मैं QR कोड में कौन सा डेटा एन्कोड कर सकता हूँ?*
**उ:** कोई भी टेक्स्ट, URL, JSON, या XML—विश्वसनीय स्कैनिंग के लिए 200 अक्षरों से कम बेहतर। बड़े पेलोड के लिए, एक छोटा URL एन्कोड करें जो सर्वर पर पूर्ण डेटा की ओर इशारा करता हो।
**प्र:** *मैं प्रोग्रामेटिक रूप से QR कोड हस्ताक्षर कैसे सत्यापित करूँ?*
**उ:** GroupDocs.Signature एक `verify` मेथड प्रदान करता है। उदाहरण:
VerificationResult result = signature.verify(verifyOptions);
if (result.isValid()) {
// Signature is authentic
}
`Signature` क्लास दस्तावेज़ों पर हस्ताक्षर लागू करने के लिए मुख्य एंट्री पॉइंट है।
**प्र:** *क्या मैं इसे मल्टी‑थ्रेडेड वातावरण में उपयोग कर सकता हूँ?*
**उ:** हाँ, लेकिन प्रत्येक थ्रेड के लिए अलग `Signature` ऑब्जेक्ट बनाएँ—इंस्टेंस थ्रेड‑सेफ़ नहीं हैं। उच्च‑समवर्ती परिदृश्यों के लिए प्रोसेसिंग कतार का उपयोग करें।
**प्र:** *QR कोड जोड़ने से फ़ाइल आकार पर क्या प्रभाव पड़ता है?*
**उ:** न्यूनतम—आकार और सामग्री के आधार पर प्रति QR कोड आमतौर पर 5‑20 KB। अधिकांश PDFs के लिए यह नगण्य है, लेकिन हजारों पृष्ठों को बैच जॉब में साइन करते समय इसे ध्यान में रखें।
**अंतिम अपडेट:** 2026-05-21
**परीक्षित संस्करण:** GroupDocs.Signature 23.12 for Java
**लेखक:** GroupDocs
## संसाधन
- [GroupDocs.Signature for Java रिलीज़](https://releases.groupdocs.com/signature/java/)
- [अस्थायी लाइसेंस](https://purchase.groupdocs.com/temporary-license/)
- [लाइसेंस खरीदें](https://purchase.groupdocs.com/buy)
- [GroupDocs दस्तावेज़ीकरण](https://docs.groupdocs.com/signature/java/)
- [GroupDocs.Signature जावा डॉक्यूमेंटेशन](https://docs.groupdocs.com/signature/java/)
- [पूर्ण API रेफ़रेंस](https://reference.groupdocs.com/signature/java/)
- [नवीनतम जावा रिलीज़](https://releases.groupdocs.com/signature/java/)
- [GroupDocs.Signature खरीदें](https://purchase.groupdocs.com/buy)
- [अपना फ्री ट्रायल शुरू करें](https://releases.groupdocs.com/signature/java/)
- [अस्थायी लाइसेंस प्राप्त करें](https://purchase.groupdocs.com/temporary-license/)
- [GroupDocs फ़ोरम](https://forum.groupdocs.com/c/signature/)
## संबंधित ट्यूटोरियल
- [Java QR कोड सिग्नेचर लाइब्रेरी - पूर्ण GroupDocs ट्यूटोरियल](/signature/java/qr-code-signatures/)
- [Java में QR कोड डेटा निकालें - GroupDocs के साथ पूर्ण गाइड](/signature/java/qr-code-signatures/detect-qr-code-mecard-signatures-groupdocs-java/)
- [PDF Java से QR कोड हटाएँ - GroupDocs के साथ पूर्ण गाइड](/signature/java/signature-management/delete-qr-code-signatures-groupdocs-java/)