उच्च-गुणवत्ता वाले वर्ड दस्तावेज़ को PDF में बदलने के लिए मुफ्त जावा एपीआई
एक अग्रणी ओपन सोर्स लाइब्रेरी जावा डेवलपर्स को मूल एप्लिकेशनों का उपयोग करके MS Office DOCX, XLSX, और PDF फ़ाइलों को उच्च सटीकता के साथ बदलने में सक्षम बनाती है।
Documents4j क्या है ?
documents4j एक शक्तिशाली ओपन-सोर्स जावा लाइब्रेरी है जो विभिन्न प्रारूपों के बीच दस्तावेज़ों को बदलने के लिए डिज़ाइन की गई है, जैसे DOCX से PDF या XLSX से PDF। कई पारंपरिक लाइब्रेरीज़ के विपरीत, documents4j परिवर्तन प्रक्रिया को Microsoft Word और Excel जैसे मूल एप्लिकेशनों को सौंपता है, जिससे न्यूनतम फ़ॉर्मेटिंग समस्याओं के साथ उच्च-गुणवत्ता वाला आउटपुट सुनिश्चित होता है। यह लाइब्रेरी एक अलग दृष्टिकोण अपनाती है। परिवर्तन लॉजिक को पुन: लागू करने के बजाय, यह एक पुल के रूप में कार्य करती है, भारी कार्य को मूल एप्लिकेशनों (जैसे Microsoft Word या Excel) को सौंपती है जो इन फ़ॉर्मेट को पूरी तरह समझते हैं। इससे यह सुनिश्चित होता है कि आउटपुट दस्तावेज़—जैसे Word फ़ाइल से उत्पन्न PDF—बिल्कुल उसी तरह दिखता है जैसा कि आप MS Office में मैन्युअल रूप से \"Save As\" पर क्लिक करते समय देखते।
documents4j का मुख्य मूल्य उसकी सटीकता में निहित है। उन व्यवसायों के लिए जो पेशेवर-ग्रेड दस्तावेज़ीकरण की आवश्यकता रखते हैं जहाँ हर मार्जिन और फ़ॉन्ट अपरिवर्तित रहना चाहिए, ओपन-सोर्स पार्सर पर निर्भर रहना जोखिमपूर्ण हो सकता है। टेम्पलेट्स से इनवॉइस या रिपोर्ट बनाने, Windows-आधारित पर्यावरण में दस्तावेज़ कार्यप्रवाह को स्वचालित करने और रिमोट सर्वर सेटअप के माध्यम से रूपांतरण लॉजिक को मुख्य एप्लिकेशन से अलग करने के लिए documents4j विशेष रूप से उपयोगी है। मूल एप्लिकेशनों का उपयोग करके, यह पारम्परिक लाइब्रेरीज़ की तुलना में अभूतपूर्व सटीकता सुनिश्चित करता है। स्थानीय और रिमोट प्रोसेसिंग, समवर्ती निष्पादन, और लोड बैलेंसिंग के समर्थन के कारण यह एंटरप्राइज़-ग्रेड सिस्टम्स के लिए अत्यधिक उपयुक्त है।
documents4j के साथ शुरूआत
सबसे पहले, आपके सिस्टम पर Java Development Kit (JDK) स्थापित होना चाहिए। Maven-आधारित जावा प्रोजेक्ट में Docs-to-PDF-Converter का संदर्भ देना और भी सरल है। आपको केवल अपने pom.xml में निम्नलिखित डिपेंडेंसी जोड़नी है और अपने IDE को Docs-to-PDF-Converter Jar फ़ाइलें प्राप्त करने और संदर्भित करने देना है।
documents4j के लिए Maven रिपॉज़िटरी
// Here’s a commonly used dependency (Local converter):
<dependency>
<groupId>com.documents4j</groupId>
<artifactId>documents4j-local</artifactId>
<version>1.1.13</version>
</dependency>
//If you only need the API:
<dependency>
<groupId>com.documents4j</groupId>
<artifactId>documents4j-api</artifactId>
<version>1.1.13</version>
</dependency>
GitHub से documents4j इंस्टॉल करें
git clone https://github.com/documents4j/documents4j.git
cd documents4j
cd documents4j-local-demo
mvn jetty:run
जावा लाइब्रेरी के माध्यम से वर्ड को PDF में बदलना
ओपन सोर्स Docs-to-PDF-Converter सॉफ़्टवेयर डेवलपर्स को जावा एप्लिकेशनों के भीतर कई दस्तावेज़ प्रकारों को PDF में बदलने की अनुमति देता है। लाइब्रेरी Micro Word (DOC, DOCX), Excel (XLS, XLSX), PowerPoint (PPT, PPTX), RTF, OpenDocument फ़ॉर्मेट और कई अन्य का समर्थन करती है। यह व्यापक फ़ॉर्मेट संगतता विभिन्न उपयोग मामलों के लिए सहज दस्तावेज़ परिवर्तन सुनिश्चित करती है। यहाँ एक सरल उदाहरण है जो दर्शाता है कि सॉफ़्टवेयर डेवलपर्स जावा कमांड का उपयोग करके Word दस्तावेज़ (.docx) को PDF में कैसे बदल सकते हैं।
जावा लाइब्रेरी के माध्यम से वर्ड को PDF में कैसे बदलें?
import com.documents4j.api.DocumentType;
import com.documents4j.api.IConverter;
import com.documents4j.job.LocalConverter;
import java.io.File;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
public class DocumentConverter {
public static void main(String[] args) {
// 1. Specify the source and target files
File wordFile = new File("C:/documents/input.docx");
File targetFile = new File("C:/documents/output.pdf");
// 2. Initialize the converter (Local instance)
IConverter converter = LocalConverter.builder()
.workerPool(20, 25, 2, TimeUnit.SECONDS)
.processTimeout(5, TimeUnit.SECONDS)
.build();
// 3. Execute the conversion fluently
boolean success = converter.convert(wordFile).as(DocumentType.MS_WORD)
.to(targetFile).as(DocumentType.PDF)
.execute();
if (success) {
System.out.println("Conversion completed successfully!");
}
// 4. Always shut down the converter to release native resources
converter.shutDown();
}
}
REST API सर्वर के साथ रिमोट कनवर्टर
ओपन सोर्स Docs-to-PDF-Converter लाइब्रेरी सॉफ़्टवेयर डेवलपर्स को दस्तावेज़ों को PDF में बदलते समय PDF आउटपुट को अनुकूलित करने की अनुमति देती है। उदाहरण के लिए, डेवलपर्स पृष्ठ आकार (A4, Letter आदि), मार्जिन, अभिविन्यास (पोर्ट्रेट या लैंडस्केप), और हेडर/फ़ुटर को नियंत्रित कर सकते हैं। इसके अतिरिक्त, वे विस्तृत दृश्य नियंत्रण के लिए HTML सामग्री पर CSS स्टाइल लागू कर सकते हैं, फ़ॉन्ट परिवार, रंग, आकार आदि को नियंत्रित कर सकते हैं। नीचे दिया गया कोड स्निपेट दिखाता है कि लाइब्रेरी द्वारा उत्पन्न PDF पर विभिन्न सेटिंग्स कैसे लागू की जाएँ।
जावा एप्लिकेशन में रिमोट वर्ड दस्तावेज़ रूपांतरण कैसे करें?
import com.documents4j.api.DocumentType;
import com.documents4j.api.IConverter;
import com.documents4j.job.RemoteConverter;
import java.io.*;
import java.util.concurrent.TimeUnit;
public class RemoteConverterExample {
public static void main(String[] args) throws Exception {
// The RemoteConverter connects to the standalone server
IConverter converter = RemoteConverter.builder()
.baseFolder(new File("/tmp/documents4j"))
.workerPool(10, 20, 5, TimeUnit.SECONDS)
// Timeout for each HTTP conversion request
.requestTimeout(30, TimeUnit.SECONDS)
// URI of the running conversion server
.baseUri("http://192.168.1.100:9998")
.build();
// Convert using InputStream / OutputStream — recommended for RemoteConverter
// because data is already serialized for HTTP transport
try (InputStream source = new FileInputStream("/input/contract.docx");
OutputStream target = new FileOutputStream("/output/contract.pdf")) {
boolean success = converter
.convert(source).as(DocumentType.MS_WORD)
.to(target).as(DocumentType.PDF)
.execute();
System.out.println("Remote conversion success: " + success);
}
converter.shutDown();
}
}
SSL एन्क्रिप्शन और बेसिक ऑथेंटिकेशन
Docs-to-PDF-Converter लाइब्रेरी जावा डेवलपर्स को आसानी से गतिशील और परिष्कृत PDF दस्तावेज़ बनाने में सक्षम बनाती है। यह स्वचालित रूप से इनपुट फ़ाइल फ़ॉर्मेट का पता लगाती है और उसके अनुसार प्रोसेस करती है। चाहे वह Word, Excel, PowerPoint, या RTF फ़ाइल हो, लाइब्रेरी अतिरिक्त कॉन्फ़िगरेशन के बिना उसे सहजता से PDF में बदल देती है। यहाँ एक उदाहरण है जो दर्शाता है कि सॉफ़्टवेयर डेवलपर्स जावा एप्लिकेशनों के भीतर मार्कडाउन फ़ाइल को PDF में कैसे बदल सकते हैं।
असमकालिक और प्राथमिकता वाला प्रोसेसिंग
Conversions can be resource-intensive. documents4j allows you to schedule conversions to run in the background (asynchronously) using a Future