2009-10-08 20 views
13

में कनवर्ट करें मैं समझता हूं कि iTextSharp का उपयोग दस्तावेज़ को पीडीएफ में परिवर्तित करने के लिए किया जा सकता है।iTextSharp - शब्द दस्तावेज़/docx को पीडीएफ

लेकिन पहले हमें iTextSharp.text.Document का उपयोग करके स्क्रैच से एक दस्तावेज़ बनाना होगा और फिर इस दस्तावेज़ में तत्व जोड़ना होगा।

यदि मेरे पास मौजूदा दस्तावेज़ फ़ाइल है, तो क्या यह दस्तावेज़ iTextSharp का उपयोग करके इस दस्तावेज़ को पीडीएफ में परिवर्तित करना संभव है। (DB मूल्यों के साथ कुछ प्लेसहोल्डर की जगह की तरह)

  1. दस्तावेज़ के हेरफेर/docx/पाठ फ़ाइलों के साथ-साथ:

    इसके अलावा, मैं iTextSharp या किसी भी इसी तरह उपकरण जो किसी दस्तावेज़ फ़ाइल पर निम्न प्रदर्शन कर सकते हैं का उपयोग करना चाहते

  2. उन्हें .pdf को

किसी को भी इस बारे में विचार कर रही है, तो कृपया साझा बदल देता है।

धन्यवाद!

+0

अधिकतम लचीलापन के लिए, आप प्रत्येक मैनिपुलेशन और रूपांतरण चरणों के लिए अलग-अलग "सर्वश्रेष्ठ-नस्ल" समाधानों पर विचार कर सकते हैं। यह मानक फ़ाइल स्वरूपों (डॉक्टर, डॉक्क्स) की सुंदरता है। – JasonPlutext

उत्तर

13

Aspose.Words घटक इस भरोसेमंद (मैं संबद्ध या कुछ भी नहीं कर सकता) कर सकता हूं।

iTextSharp में एमएस वर्ड फ़ाइल स्वरूपों को लोड और प्रोसेस करने के लिए आवश्यक सुविधा सेट नहीं है।

+1

आपकी मदद के लिए सभी को धन्यवाद। मेरे वर्तमान स्केनेरियो के लिए, मैं डॉक/डॉक्क्स मैनिपुलेशन करने के लिए एस्पेस लाइब्रेरी का उपयोग करूँगा और अंत में मेल मर्ज के बाद परिणाम दस्तावेज़ को पीडीएफ में परिवर्तित कर दूंगा। मैंने 30 दिनों के नि: शुल्क परीक्षण संस्करण को डाउनलोड किया है और ऐसा लगता है कि यह मेरे सभी मुद्दों को हल करता है। मैं सुझाव दूंगा कि किसी भी व्यक्ति का परीक्षण करने के लिए पहले और फिर निर्णय लेने का अनुमान लगाया जाए। – iniki

+1

ज्यादातर मामलों में अच्छा ओपनएक्सएमएल-टू-पीडीएफ रूपांतरण करता है, लेकिन इस बात से अवगत रहें कि वर्तमान में सामग्री नियंत्रण और AltChunk नोड्स जैसे कुछ ओपन एक्सएमएल विशेषताओं के लिए यह खराब या अस्तित्वहीन समर्थन है। –

+0

पीडीएफ कनवर्टर के लिए मेरा/प्लूटक्स्ट का वाणिज्यिक डॉकक्स हालिया विकल्प है; इसे http://converter-eval.plutext.com/ – JasonPlutext

0

डॉक्क्स मैनिपुलेशन के लिए, आपको देशी ओपन एक्सएमएल विधि का उपयोग करना चाहिए। माइक्रोसॉफ्ट से ओपन एक्सएमएल एसडीके 2 डाउनलोड करें।

और फिर आप इस भुगतान लाइब्रेरी के साथ docx फ़ाइलों को पीडीएफ में परिवर्तित कर सकते हैं: http://www.subsystems.com/dpw.htm। यह वास्तव में बहुत अच्छा है।

+1

यह बहुत अच्छा नहीं है। कोशिश की, यह हर जगह फोंट बदलता है और पेज स्वरूपण को हटा देता है। – Jerome

+0

यह * महान नहीं है, @ फ्रैंकलिन। मैं सहमत हूँ। लेकिन एक बार जब आप सीखने की अवस्था प्राप्त कर लेते हैं तो आप स्वरूपण, फोंट इत्यादि को नियंत्रित कर सकते हैं। सीखना वक्र बेकार है, हालांकि – Rap

1

यदि आपको इस बात की कोई परवाह नहीं है कि प्रारूप क्या प्रदर्शित करेगा, तो प्रभावशाली docx2tex है जो Word 2007 docx फ़ाइलों को लेटेक्स दस्तावेज़ों में परिवर्तित करता है। एक बार लेटेक्स में, आपके पास दस्तावेज़ को प्रोग्रामेटिक रूप से सुधारने और उससे पीडीएफ उत्पन्न करने की बहुत सारी शक्ति है।

मैं tex.stackexchange पर उत्तर में उपयोगिता के बारे में और अधिक कहता हूं।

3

Aspose.Words वास्तव में एक अच्छा समाधान है, लेकिन यह सही निष्ठा प्रदान नहीं करता है। लिखने के समय इसमें गैर रोमन भाषाओं, जटिल स्वरूपण जैसे फ़्लोटिंग तत्वों और कई अन्य समस्याओं के साथ समस्याएं हैं।

आप इस PDF Conversion Web Service पर एक नज़र डालना चाहते हैं जिसका उपयोग जावा और .NET सहित किसी भी वेब सेवा सक्षम वातावरण से किया जा सकता है।

ध्यान दें कि मैंने इस परियोजना पर काम किया है ताकि सामान्य अस्वीकरण लागू हो जाएं।

+0

पर आज़माएं पीडीएफ रूपांतरण वेब सेवा सिर्फ दस्तावेज़ों को पीडीएफ में कनवर्ट करने के लिए माइक्रोसॉफ्ट वर्ड को आमंत्रित करती है। यह सिर्फ शब्द स्वचालन है कि कोई भी ऐसा कर सकता है। – romeok

+4

यह वास्तव में थोड़ा और अधिक करता है, लेकिन यह जानकर कि आप कौन हैं आप पक्षपातपूर्ण हैं :-) Aspose.Words, अच्छे उत्पाद पर अच्छा काम, मैं हर समय इसकी अनुशंसा करता हूं। –

+0

आपकी रूपांतरण सेवा की कीमत 1 सर्वर के लिए $ 1500 है। @iniki डायनामिक पीडीएफ कन्वर्टर या उसी कीमत या उससे कम के लिए Aspose के साथ बेहतर हो सकता है, और यह सब प्रबंधित कोड में चलता है और वर्ड को स्थापित करने या वेब सेवा के प्रबंधन की आवश्यकता नहीं होती है। हालांकि, आपके बिंदु पर, कुछ भी रूपांतरण निष्ठा प्रदान नहीं करेगा जो शब्द स्वचालन कर सकते हैं। – MikeTeeVee

3

आप Microsoft.Office

की
private Microsoft.Office.Interop.Word.ApplicationClass MSdoc; 

    //Use for the parameter whose type are not known or say Missing 
    object Unknown = Type.Missing; 

    private void word2PDF(object Source, object Target) 
    { //Creating the instance of Word Application 
     if (MSdoc == null)MSdoc = new Microsoft.Office.Interop.Word.ApplicationClass(); 

     try 
     { 
      MSdoc.Visible = false; 
      MSdoc.Documents.Open(ref Source, ref Unknown, 
       ref Unknown, ref Unknown, ref Unknown, 
       ref Unknown, ref Unknown, ref Unknown, 
       ref Unknown, ref Unknown, ref Unknown, 
       ref Unknown, ref Unknown, ref Unknown, ref Unknown, ref Unknown); 
      MSdoc.Application.Visible = false; 
       MSdoc.WindowState = Microsoft.Office.Interop.Word.WdWindowState.wdWindowStateMinimize; 

      object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF; 

      MSdoc.ActiveDocument.SaveAs(ref Target, ref format, 
        ref Unknown, ref Unknown, ref Unknown, 
        ref Unknown, ref Unknown, ref Unknown, 
        ref Unknown, ref Unknown, ref Unknown, 
        ref Unknown, ref Unknown, ref Unknown, 
        ref Unknown, ref Unknown); 
      } 
      catch (Exception e) 
      { 
      MessageBox.Show(e.Message); 
      } 
     finally 
      { 
      if (MSdoc != null) 
      { 
       MSdoc.Documents.Close(ref Unknown, ref Unknown, ref Unknown); 
       //WordDoc.Application.Quit(ref Unknown, ref Unknown, ref Unknown); 
      } 
      // for closing the application 
      WordDoc.Quit(ref Unknown, ref Unknown, ref Unknown); 
     } 
    } 
+0

निश्चित रूप से, बस जागरूक रहें कि सर्वर में काम करते समय पर्यावरण, यह अनुशंसित नहीं है। Http://support.microsoft.com/kb/257757 – Daniel

+0

यह अच्छा लगता है क्योंकि यह एक एमएस ऑफिस जार है लेकिन मुझे यह नहीं मिला कि मेरे प्रोग्राम में इसका उपयोग कैसे किया जाए। मुझे माइक्रोसॉफ्ट ऑफिस जार नहीं मिला। क्या आप कृपया मेरी मदद कर सकते हैं। –

+0

आपको किसी भी तरह की COM इंटरऑपरेबिलिटी लाइब्रेरी का उपयोग करना होगा जैसे जैकब सीधे उन जावा-ऑफिस ऑब्जेक्ट्स को जावा कोड से संभालने में सक्षम हो सकता है (कम से कम यह जेडीके 1.5 के मामले में था) - फिर भी कोड थोड़ा उलझन में दिखाई देगा। "रेफरी" और इंटरऑप लाइब्रेरी से निर्णय लेते हुए, उपरोक्त कोड सी # में लिखा गया है –

0

मौजूदा विधि का उपयोग कर सकते हैं मैं एक ही मुद्दा है।
समाधान खोजने की कोशिश करने के कई दिनों बाद, ऐसा लगता है कि Docx4J, जावा-आधारित टूल, या PDFCreator जैसे पीडीएफ प्रिंटर, मुफ्त समाधान में से एक हो सकते हैं।
निश्चित रूप से, केवल एक वाणिज्यिक उपकरण अनुरोधित कार्य को प्रभावी ढंग से कर सकता है।
माइक्रोसॉफ्ट पक्ष पर, आप सर्वर-साइड सक्षम Sharepoint Word Automation Services का उपयोग कर सकते हैं, (7 जून 2016 को जांचें), या अपने स्थानीय कंप्यूटर में इंटरऑप करें।
सुझाए गए भाग-से-भाग रूपांतरण (डीओसी या डीओसी कुछ मध्यवर्ती भाषा और फिर पीडीएफ में) ऐसा लगता है कि उपयोगकर्ताओं ने स्टैक ओवरफ्लो या अन्य मंचों पर क्या कहा था, संभव नहीं है, क्योंकि परिणाम अपेक्षित नहीं है।