उपयोग कैसे करें
- PDF को अपलोड एरिया पर खींचकर छोड़ें या चुनने के लिए क्लिक करें (अधिकतम 100 MB)।
- पूर्वावलोकन देखकर पक्का करें कि दस्तावेज़ सही है।
- API अनुरोधों के लिए रॉ Base64 चुनें, या PDF को वेब पेज में एम्बेड करने के लिए data URI।
- परिणाम कॉपी करें या उसे .txt फ़ाइल के रूप में डाउनलोड करें।
JSON API के ज़रिए PDF भेजना
JSON में कोई बाइनरी टाइप नहीं होता, इसलिए दस्तावेज़ लेने वाले REST API आमतौर पर उन्हें Base64 स्ट्रिंग के रूप में लेते हैं। ई-सिग्नेचर प्लेटफ़ॉर्म, इनवॉइसिंग और ई-बिलिंग सिस्टम, प्रिंट और मेल सेवाएँ, OCR इंजन और दस्तावेज़ आर्काइव आमतौर पर PDF इसी तरह स्वीकार करते हैं: content, file या documentBase64 जैसे किसी फ़ील्ड में, और फ़ाइल का नाम एक अलग फ़ील्ड में। कुछ सेवाएँ PDF इसी तरह लौटाती भी हैं; Base64 से PDF उन्हें वापस फ़ाइलों में बदल देता है।
जब तक API दस्तावेज़ में कुछ और न कहा गया हो, बिना लाइन ब्रेक वाला रॉ Base64 भेजें, क्योंकि कई API ऐसा मान अस्वीकार कर देते हैं जिसमें अब भी data:application/pdf;base64, प्रीफ़िक्स लगा हो। अनुरोध के आकार की सीमा का भी ध्यान रखें: 7.5 MB की PDF लगभग 10 MB का Base64 बन जाती है।
Base64 PDF को पहचानना
PDF फ़ाइल %PDF- अक्षरों से शुरू होती है, जिसके बाद वर्ज़न नंबर आता है। Base64 में एनकोड करने पर ये बाइट हमेशा JVBERi0 से शुरू होने वाली स्ट्रिंग बनाते हैं। किसी API रिस्पॉन्स, डेटाबेस कॉलम या लॉग फ़ाइल में JVBER से शुरू होने वाली लंबी स्ट्रिंग लगभग निश्चित रूप से PDF होती है। पेलोड भेजने से पहले भी यही जाँच काम आती है: अगर आपकी स्ट्रिंग किसी और चीज़ से शुरू होती है, तो हो सकता है आपने ग़लत डेटा एनकोड किया हो, या उसे दो बार एनकोड कर दिया हो।
HTML में PDF एम्बेड करना
data URI पूरी PDF को HTML पेज के अंदर रख देता है, अलग से कोई फ़ाइल होस्ट करने की ज़रूरत नहीं पड़ती:
<embed src="data:application/pdf;base64,JVBERi0..." type="application/pdf" width="100%" height="600">
<iframe src="data:application/pdf;base64,JVBERi0..." width="100%" height="600"></iframe>
यह बिल्ट-इन PDF व्यूअर वाले डेस्कटॉप ब्राउज़रों में काम करता है, लेकिन इसकी कुछ सीमाएँ हैं। कई मोबाइल ब्राउज़र पेज के अंदर PDF दिखाते ही नहीं। Chrome और कुछ अन्य ब्राउज़र किसी पेज को पूरे टैब को data: URL पर ले जाने से भी रोकते हैं, इसलिए data:application/pdf URI की ओर इशारा करने वाला लिंक या window.open कॉल ख़ाली टैब खोल सकता है या कुछ भी नहीं करता। JavaScript से PDF को नए टैब में खोलने के लिए Base64 को इसके बजाय Blob URL में बदलें। कुछ मेगाबाइट से बड़े दस्तावेज़ों के लिए सामान्य फ़ाइल URL आमतौर पर बेहतर विकल्प है।
कोड में PDF एनकोड करना
# Python: JSON अनुरोध का बॉडी बनाएँ
import base64, json
from pathlib import Path
pdf_b64 = base64.b64encode(Path('invoice.pdf').read_bytes()).decode('ascii')
body = json.dumps({'filename': 'invoice.pdf', 'content': pdf_b64})
// ब्राउज़र: फ़ाइल किसी <input type="file"> से आती है
const reader = new FileReader();
reader.onload = () => {
const pdfBase64 = reader.result.split(',')[1]; // data URI प्रीफ़िक्स हटाएँ
};
reader.readAsDataURL(file);
अक्सर पूछे जाने वाले प्रश्न
मेरी PDF की Base64 स्ट्रिंग JVBERi0 से क्यों शुरू होती है?
%PDF- का Base64 रूप हैं, जो हर PDF फ़ाइल की शुरुआत में मौजूद हेडर है। इन्हें देखकर पक्का हो जाता है कि स्ट्रिंग में PDF है।क्या कन्वर्ट करते समय PDF अपलोड होती है?
नहीं। फ़ाइल आपके ब्राउज़र में ही पढ़ी, एनकोड की और दिखाई जाती है। अनुबंध, इनवॉइस और दूसरे गोपनीय दस्तावेज़ कभी आपके डिवाइस से बाहर नहीं जाते।
क्या एनकोडिंग से PDF बदलती या कंप्रेस होती है?
नहीं। Base64 स्ट्रिंग डिकोड होकर ठीक वही बाइट देती है, इसलिए पासवर्ड सुरक्षा, डिजिटल सिग्नेचर, फ़ॉर्म फ़ील्ड और मेटाडेटा सब जस के तस रहते हैं। टेक्स्ट PDF से लगभग 33% बड़ा होता है; आकार घटाने के लिए एनकोड करने से पहले PDF को कंप्रेस करें।
क्या लाइन रैपिंग चालू करनी चाहिए?
केवल तब, जब फ़ॉर्मैट को इसकी ज़रूरत हो, जैसे जब आप हाथ से MIME ईमेल बना रहे हों, जहाँ अटैचमेंट की लाइनें 76 अक्षरों तक सीमित होती हैं। JSON API और HTML data URI एक लगातार स्ट्रिंग चाहते हैं।
PDF कितनी बड़ी हो सकती है?
यह टूल 100 MB तक की फ़ाइलें स्वीकार करता है। API के लिए व्यावहारिक सीमा आमतौर पर इससे कम होती है, इसलिए अनुरोध का अधिकतम आकार जाँचें और याद रखें कि Base64 आकार को लगभग एक-तिहाई बढ़ा देता है। बहुत लंबा आउटपुट स्क्रीन पर दिखने में धीमा हो सकता है; बड़े दस्तावेज़ों के लिए “डाउनलोड करें” का उपयोग करें।