दिलचस्प पोस्ट
मैं C ++ में स्ट्रिंग को कैसे दोहरा सकता हूं? विधि पैरामीटर और स्थानीय चर के लिए अंतिम उपयोग करना चाहिए? Percents चौड़ाई के साथ उत्तरदायी सीएसएस त्रिकोण कैसे PHP में स्कैंडर का उपयोग केवल छवियों को पाने के लिए? एंड्रॉइड: चेहरा बंद होने पर स्क्रीन बंद करें क्या करता है => और () => स्काला में प्रभाव के साथ एपेंड का उपयोग jQuery php में json डीकोड pylab / networkx; अद्यतन के बाद प्रदर्शित कोई नोड लेबल नहीं यह समानांतर क्यों है। कार्यक्रम के लिए कार्यक्रम को फ्रीज कर दिया गया? जब आपका ऐप खुला होता है और अग्रभूमि में स्टॉक आईओएस अधिसूचना बैनर प्रदर्शित करता है? अल्पविराम से पृथक स्ट्रिंग को int सरणी में कनवर्ट करें सी ++ 11 स्टडी :: बाइंड और बूस्ट :: बाँध के बीच अंतर ब्रेकपॉइंट वर्तमान में हिट नहीं होगा किसी Silverlight अनुप्रयोग में इस दस्तावेज़ के लिए कोई प्रतींक लोड नहीं किया गया है मापदंडों के बिना एसक्यूएल इंजेक्शन से बचना

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

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

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

कोई सुझाव?

Solutions Collecting From Web of "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 तक)