दिलचस्प पोस्ट
jQuery सीएसएस – <style> -tag में लिखें JSF में सत्यापन कैसे करें, JSF में एक कस्टम वैलिएटर कैसे बनाएं कैसे php के साथ कर्ल का उपयोग कर फ़ाइल अपलोड करें अजगर के भीतर से कमांड लाइन प्रोग्राम निष्पादित करना प्रत्येक पट्टी पर pyplot.barh () के साथ बार के मान को कैसे प्रदर्शित किया जाए? PHP के साथ एक बयान में एकाधिक SQL क्वेरी निष्पादित करना स्पष्ट त्वरण – यह कब उपयोग किया जाता है? वर्ग चर और वर्ग उदाहरण चर के बीच अंतर? Node.js के साथ उपयोग करने के लिए कौन सा websocket लाइब्रेरी? एजेक्स अनुरोध के लिए jQuery "पार्सररर" लौट रहा है मैं सीएसएस के साथ पाठ कैसे बदल सकता हूँ? मैं एक Django टेम्पलेट के भीतर अपनी साइट का डोमेन नाम कैसे प्राप्त करूं? MongoDB में $ खोलना ऑपरेटर क्या है? एंड्रॉइड पर HTML5 mp4 वीडियो को कैसे चलाएं? एक शब्दकोश से वस्तुओं को हटाने के लिए कैसे करें?

PHP के लिए कोई पीडीएफ पार्सर है?

नमस्ते मुझे php (fpdf, dompdf, आदि) के लिए कई पीडीएफ जेनरेटर के बारे में पता है कि मैं क्या जानना चाहता हूं पार्सर के बारे में है

मेरे नियंत्रण से बाहर के कारणों के लिए, मुझे कुछ जानकारी केवल एक पीडीएफ के भीतर एक मेज में है और मुझे उस तालिका को निकालने और एक सरणी में कनवर्ट करने की आवश्यकता है।

कोई सुझाव?

वेब के समाधान से एकत्रित समाधान "PHP के लिए कोई पीडीएफ पार्सर है?"

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

कारण यह है कि यह पाठ कैसे लिखता है सबसे DOM आधारित renderers – कि मैंने इस्तेमाल किया है – एक स्ट्रिंग के रूप में पूरी लाइन लिखो, और यह एक बार स्थिति (जो वास्तव में पढ़ने के लिए आसान है)। एक्रोबेट एक समय में केवल एक या कुछ ही वर्ण लिखकर और उन्हें स्वतंत्र रूप से पोजिशन करके और अधिक कुशल (और यह है) की कोशिश करता है हालांकि यह वास्तव में रेंडरिंग को सरल करता है, यह बहुत अधिक मुश्किल बना देता है

यहां ऊपर की तरफ, यह है कि पीडीएफ फॉर्मेट वास्तव में सरल है। आपके पास "ऑब्जेक्ट्स" हैं जो नियमित सिंटैक्स का पालन करते हैं। तब आप सामग्री उत्पन्न करने के लिए उन्हें एक साथ लिंक कर सकते हैं। विनिर्देश फ़ाइल स्वरूप का वर्णन करने में एक अच्छा काम करता है। लेकिन असली दुनिया में पढ़ना थोड़ा सा मस्तिष्क शक्ति लेना है …

कुछ उपयोगी सलाह के टुकड़े को मुझे कठिन तरीके से सीखना होगा यदि आप इसे स्वयं लिखना चाहते हैं:

  1. एडोब फिर से मानचित्र फोंट पसंद करता है तो चरित्र 65 की संभावना A नहीं होगी … आपको एक नक्शा वस्तु खोजनी होगी और यह पता लगाना होगा कि इसमें कौन सी पात्र हैं, उसके आधार पर क्या किया जा रहा है। और यह तब से कुशल है जब एक फ़ॉन्ट उस फ़ॉन्ट के लिए दस्तावेज़ में प्रकट नहीं होता है, इसमें इसमें शामिल नहीं है (जो आपको प्रोग्राम को एक पीडीएफ संपादित करने की कोशिश करता है)।
  2. इसे संभव के रूप में सार के रूप में लिखें प्रत्येक ऑब्जेक्ट प्रकार के लिए कक्षाएं लिखें, और प्रत्येक मूल प्रकार (तार, संख्याएं, आदि)। उन वर्गों को आपके लिए पार्स करने दें। वहाँ एक दोहराव का एक अच्छा सा हो जाएगा, लेकिन आप अपने आप को अंत में बचा लेंगे जब आपको लगता है कि आपको केवल एक विशेष प्रकार के लिए कुछ बदलाव करने की जरूरत है …)
  3. एक विशिष्ट संस्करण या पीडीएफ युक्ति के दो लिखें, और इसे लागू करें संस्करण संख्या की जांच करें, और यदि आप उम्मीद से अधिक है, तो जमानत … और "इसे काम करने की" कोशिश न करें यदि आप नए संस्करणों का समर्थन करना चाहते हैं, विनिर्देश को तोड़ दें और पार्सर को वहां से अपग्रेड करें। परीक्षण करने की कोशिश मत करो और अपना रास्ता अप करें (यह मजेदार नहीं है) …
  4. संपीड़ित धाराओं के साथ अच्छे भाग्य मैंने पाया है कि आम तौर पर आप लंबाई तर्कों पर भरोसा नहीं कर सकते हैं ताकि आप असम्पीडिंग को सत्यापित कर सकें। कभी-कभी (कुछ जनरेटर के लिए) यह अच्छी तरह से काम करता है … अन्य यह एक या अधिक बाइट्स से बंद है। अगर मैं फ़िल्टर को मैच करता हूं और फिर लंबाई को बल देता हूं तो मैं इसे झुकाने की कोशिश करता हूं …
  5. जब परीक्षण की लंबाई, strlen उपयोग नहीं करते mb_strlen($string, '8bit') क्योंकि यह अलग-अलग वर्ण सेटों के लिए क्षतिपूर्ति करेगा (और अन्य वर्णों में संभावित अमान्य वर्णों की अनुमति देगा)।

अन्यथा, शुभकामनाएं …

मैं इसके लिए पीडीएफबॉक्स का उपयोग करता हूं ( http://pdfbox.apache.org/ )। यह सॉफ़्टवेयर javabased और मंच स्वतंत्र है यह तेज और विश्वसनीय काम करता है आप इसे exec या शेल निष्पादित या PHP / Java-Bridge ( http://php-java-bridge.sourceforge.net/ ) के माध्यम से उपयोग कर सकते हैं

क्या आपने पहले ही एक्सपीडीएफ को देखा है? वहाँ एक प्रोग्राम है जिसमें pdftotext कहा जाता है जो कि रूपांतरण करता है। आप इसे पीएचडी से कॉल कर सकते हैं और फिर पीडीएफ के टेक्स्ट संस्करण में पढ़ सकते हैं। आपको php से exec () या system () को चलाने की क्षमता की आवश्यकता होगी, इसलिए यह सभी मेजबानी समाधानों पर हालांकि काम नहीं करेगा।

इसके अलावा, PHP साइट पर कुछ उदाहरण हैं जो पाठ को पीडीएफ में परिवर्तित कर देंगे, हालांकि इसकी सुंदर अंगूर आप उन उदाहरणों में से कुछ के रूप में भी कोशिश कर सकते हैं उस PHP पेज पर , phuc dot org पर luc के लिए खोजें।

GhostScript या ITextSharp पर एक नज़र डालें, दोनों के विभिन्न क्रॉस-प्लेटफ़ॉर्म संस्करण हैं।

Zend_Pdf ज़ेंड फ़्रेमवर्क का हिस्सा है। उनका मैनुअल कहता है:

Zend_Pdf घटक एक पीडीएफ (पोर्टेबल दस्तावेज़ स्वरूप) हेरफेर इंजन है यह दस्तावेजों को लोड, बना, संशोधित और सहेज सकता है। इस प्रकार यह किसी भी PHP अनुप्रयोग को गतिशील रूप से मौजूदा दस्तावेजों को संशोधित करके या नए लोगों को खरोंच से उत्पन्न करके पीडीएफ दस्तावेज़ बनाकर सहायता कर सकता है।

यह वास्तव में पीडीएफ के अंदर एक मेज नहीं हो सकता है क्योंकि पीडीएफ इस प्रकार की जानकारी खो देता है …

यह PHP पीडीएफ़ पार्सर है, जो दो स्वादों में मौजूद है:

  1. पीडीएफ फॉर्मेट करने के लिए मुफ्त संस्करण पीडीएफ को पार्स कर सकते हैं
  2. वाणिज्यिक एड-ऑन किसी भी पीडीएफ प्रारूप को पार्स कर सकता है (वर्तमान 1.9 तक)