2008-09-12 15 views
75

मैं अपने (मूल) सी ++ विंडोज एप्लिकेशन से पीडीएफ आउटपुट उत्पन्न करने में सक्षम होना चाहता हूं। क्या ऐसा करने के लिए कोई मुफ्त/मुक्त स्रोत पुस्तकालय उपलब्ध है?सी/सी ++ एप्लिकेशन के लिए ओपन सोर्स पीडीएफ लाइब्रेरी?

मैंने this question के उत्तरों को देखा, लेकिन वे ज्यादातर .NET से संबंधित हैं।

उत्तर

52

LibHaru

हारू एक नि: शुल्क, पार मंच, पैदा पीडीएफ एएनएसआई-सी में लिखा के लिए मुक्त-स्रोत सॉफ्टवेयर पुस्तकालय है। यह एक स्थैतिक-पुस्तकालय (.a, .lib) और साझा-लाइब्रेरी (.so, .dll) दोनों के रूप में काम कर सकता है।

इसे अपने आप को कोशिश की है, लेकिन शायद यह आप

+0

क्या हम लिबहरू के साथ पीडीएफ फाइलें पढ़ सकते हैं या हम केवल बना सकते हैं? –

+4

@ रुई: केवल दुर्भाग्य से बनाएं। –

+2

एफडब्ल्यूआईडब्ल्यू, मैंने libHaru (https://github.com/pocoproject/poco/tree/master/PDF) के लिए एक पॉको रैपर लिखा था। हमने इसे कभी जारी नहीं किया है, लेकिन यह निकट-उत्पादन-ग्रेड कोड है। – Alex

15

मदद कर सकते हैं बहादुर और अपने खुद के रोल करने को तैयार हैं, तो आप एक पोस्टस्क्रिप्ट पुस्तकालय के साथ शुरू कर सकता है और यह वृद्धि पीडीएफ से निपटने के लिए, एडोब के free online PDF reference का लाभ लेना।

3
  • LibHaru कई लोगों द्वारा उपयोग किया जाता है।

एक गैर खुला स्रोत दृष्टिकोण है: PDF Creator Pilot जो C++, C#, डेल्फी, एएसपी, ASP.NET, वीबी, VB.NET, VBScript, PHP और अजगर

5

यह निर्भर करता है सहित अधिक भाषा विकल्प प्रदान करता है आपकी जरूरतों पर थोड़ा सा। ड्राइंग में कुछ टूलकिट बेहतर होते हैं, अन्य टेक्स्ट लिखने के लिए बेहतर होते हैं। Cairo ड्राइंग के लिए बहुत अच्छा है (यह स्क्रीन और फ़ाइल प्रकारों की एक विस्तृत श्रृंखला का समर्थन करता है, जिसमें पीडीएफ भी शामिल है), लेकिन यह अच्छी टाइपोग्राफी के लिए आदर्श नहीं हो सकता है।

17

मैंने एक परियोजना पर काम किया जिसके लिए एक पीडीएफ रिपोर्ट की आवश्यकता थी। ऑनलाइन खोज करने के बाद मुझे PoDoFo लाइब्रेरी मिली। बहुत मजबूत माना जाता है। मुझे सभी सुविधाओं की आवश्यकता नहीं थी, इसलिए मैंने जटिलता को दूर करने के लिए एक रैपर बनाया। बहुत मुश्किल नहीं था। आप पुस्तकालय यहाँ पा सकते हैं:

http://podofo.sourceforge.net/

का आनंद लें!

+0

मैक पर पीडीडीएफओ बिल्डिंग एक बड़ा दर्द है इसलिए मैंने अंततः कोशिश छोड़ दी। लिबहरू का निर्माण बहुत आसान था। –

+0

पॉडोफ़ो को 2 कंपाइलर समस्याएं मिलीं, #include , दो फ़ाइलों में जोड़ने के बाद, पैकेज बनाने में सक्षम था। लेकिन किसी भी तरह, सेमेक सिस्टम मेरे लिनक्स पर अच्छी तरह से नहीं खेलता है जहां मेरे पास जीसीसी के दो संस्करण हैं (पुराना मेरे सेंटोस 6.5 के साथ आया है, और एक नवीनतम 5.3 जो मैं बनाता हूं)। लिंकिंग एक मुद्दा है। मैं helloworld को जोड़ने में कामयाब रहा, लेकिन परीक्षण कार्यक्रम एक खाली दस्तावेज का उत्पादन किया। इस समस्या को हल करना बहुत मुश्किल है। –

+1

लेकिन पॉडोफ़ो फ्रीक्वेट 2 लाइब्रेरी की आवश्यकता है जो ** जीपीएल है, एलजीपीएल ** नहीं। यदि आप अपना स्रोत सार्वजनिक नहीं करना चाहते हैं तो आप freetype2 ** के उपयोग से सॉफ़्टवेयर नहीं बना सकते हैं। ** – 18C

1

muPdf पुस्तकालय बहुत आशाजनक दिखता है: http://blog.kowalczyk.info/software/sumatrapdf/free-pdf-reader.html

+1

ऐसा लगता है कि muPdf पीडीएफ को प्रस्तुत करने के लिए है, उन्हें उत्पन्न नहीं कर रहा है? – vy32

+0

@ vy32 स्रोत को देखते हुए मैं कहूंगा कि पीडीएफ फाइलें उत्पन्न हो रही हैं, सबसे अच्छा काम प्रगति पर है, न कि 'muPdf' – matec

6

पीडीएफ Hummus: http://mupdf.com/

भी एक खुला स्रोत दर्शक नहीं है। http://pdfhummus.com/ के लिए देखें - इसमें प्रतिपादन को छोड़कर पीडीएफ फाइलों के साथ हेरफेर के लिए सभी आवश्यक सुविधाएं शामिल हैं। wxWidgets पुस्तकालय के साथ

+0

का प्राथमिक लक्ष्य मैंने हाल ही में हमस के साथ एक बड़ा पीडीएफ-निर्यात किया था और इसकी सिफारिश कर सकते हैं। संभवतः वर्तमान पीडीएफएसपीसी (जो काफी संपूर्ण है) की सभी सुविधाओं को कवर करने के मामले में पूरा नहीं है, लेकिन कई वर्चुअल फ़ंक्शंस के साथ कॉलबैक क्लास के माध्यम से समझने में आसान और अच्छी एक्स्टेंसिबल (https://github.com/galkahana/PDF- लेखक/ब्लॉब/मास्टर/PDFWriter/DocumentContextExtenderAdapter.h)। फ़ॉन्ट हैंडलिंग के लिए टीआईएफएफ/जेपीईजी हैंडलिंग और फ्रीटिप लाइब्रेरी शामिल है। –

6

jagpdf उनमें से एक प्रतीत होता है। यह सी ++ में लिखा गया है लेकिन एक सी एपीआई प्रदान करता है।

1

wkhtmltopdf

प्रयास करें सॉफ्टवेयर

क्रॉस मंच की सुविधा है। ओपन सोर्स। वेबकिट का उपयोग कर किसी भी वेब पेज को पीडीएफ दस्तावेज़ों में कनवर्ट करें। आप हेडर और पाद लेख जोड़ सकते हैं। टीओसी पीढ़ी। बैच मोड रूपांतरण। XServer के साथ लिनक्स सर्वर पर चलाया जा सकता है (X11 क्लाइंट libs स्थापित होना चाहिए)। सीधे libwkhtmltox पर बाइंडिंग के माध्यम से PHP या पायथन द्वारा उपयोग किया जा सकता है।

+0

यह अच्छा है। लेकिन, जैसा कि यह दिनांकित वेबकिट का उपयोग करता है, कुछ पेज शिकायत कर सकते हैं (उदाहरण के लिए यूट्यूब) – swdev

संबंधित मुद्दे