क्या कॉपी किए गए पाठ से ligatures निकालना संभव है?


10

मेरे पास कुछ पीडीएफ हैं जिनमें पाठ में लिगचर हैं (उदाहरण के लिए, ffएक एकल वर्ण में संयुक्त है )।

क्या पीडीएफ से पाठ को कॉपी करते समय उन्हें हटाने का एक आसान तरीका है? (यानी, जब मैं पेस्ट, मैं चाहते की तरह के रूप में चिपकाया जाए ff)।

मैं स्टैक ओवरफ्लो पर जवाब में इन पीडीएफ से बहुत सारे पाठ कॉपी करता हूं और मुझे सबसे अच्छा अप्रिय (ठीक है, मैं मानता हूं, मैं वास्तव में picky हूँ :-P); अन्य स्थानों में कॉपी किए जाने पर लिगचर भी सही तरीके से दिखाई नहीं देते हैं (जैसे, अगर मैं उन्हें नोटपैड में कॉपी करता हूं, तो वे ब्लॉक के रूप में दिखाई देते हैं)।

मैं पीडीएफ को संशोधित नहीं कर सकता।

मैं एडोब एक्रोबैट रीडर और फॉक्सिट रीडर दोनों का उपयोग करता हूं, लेकिन मैं एक नए पीडीएफ रीडर की कोशिश करूंगा।

जवाबों:


3

अजगर में यह होगा:

import unicodedata
# \uFB00 is the ff ligature.
unicodedata.normalize('NFKD',u'\uFB00').encode('ascii','ignore')

आप पीडीएफ फाइलों को पढ़ने के लिए इसे pPPdf के साथ जोड़ सकते हैं ।


2

जब मैं यह परीक्षण करता हूं तो पाठक उद्दीपक को डिकोडिंग लगता है।

Btw। pdflatex दस्तावेज़ों के लिए आप इसका उपयोग preamble में PDF दस्तावेज़ में लिगुरेट्स प्रदर्शित करने के लिए कर सकते हैं लेकिन व्यक्तिगत वर्णों की प्रतिलिपि बनाएँ:

\ इनपुट {} glyphtounicode.tex
\ pdfgentounicode = 1%

1

एक संभावना यह होगी कि आप अपने पसंदीदा टेक्स्ट-एडिटर का उपयोग करें और बस उन्हें बदल दें।

एक अन्य तरीका एक स्क्रिप्ट लिखना होगा जो उपयोग करता है sed..लेकिन यह केवल * NIX- सिस्टम होगा, मुझे डर है।


GnuWin32 और आपके पास विंडोज़ पर sed है।
mbq

@mbq: यह भी उस में शामिल है? बहुत अच्छा। धन्यवाद।
बॉबी

0

मैंने इसी तरह के सवाल का अधिक गहराई से जवाब दिया - जब मैं पीडीएफ से कॉपी करता हूं या डॉक्यूमेंट प्रिंट करता हूं तो टेक्स्ट `फाई` कट क्यों जाता है?

आप कॉपी किए गए पाठ में "टूटे हुए" शब्दों को बदल सकते हैं यदि आपके पास टूटे हुए शब्दों से मूल शब्दों तक मैपिंग है। मैंने शब्दों से लिगमेंट्स को हटाकर इस मैपिंग को उत्पन्न करने के लिए एक स्क्रिप्ट लिखी और जाँच की कि परिणामी शब्द अद्वितीय है या नहीं। अंग्रेजी शब्दों की मेरी शब्दकोश के लिए, 99.5% के लिए सभी संभव टूट शब्दों का बदली हैं, और 92.3% शब्द है कि एक संयुक्ताक्षर अनुक्रम शामिल की ( ff, fi, fl, ffi, या ffl) बरामद किया जा सकता। इन दो प्रतिशत के बीच का अंतर वैध शब्द अन्य वैध शब्द से स्नायुबंधन को हटाने के द्वारा बनाए जाते हैं (जैसे की आश्चर्यजनक रूप से बड़ी संख्या की वजह से है butterfly --> buttery, fluffs --> usऔर misfits --> mists)।

यहाँ गारंटीकृत-बदली जाने वाली "टूटी हुई" शब्दों का एक CSV है (और वे शब्द जो वे हुआ करते थे): http://www.filedropper.com/brokenligaturewordfixes


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

हाँ मैं समझता हूं। काश, उस तरह के लिंक को सत्यापित करने का एक सरल तरीका था, या यहां तक ​​कि केवल फ़ाइल प्रकार की गारंटी देने के लिए। धन्यवाद!
Jan Van Bruggen

0

मेरा तरीका केवल पीडीएफ से नोटपैड (किसी भी स्वरूपण को हटाने के लिए) और फिर नोटपैड से माइक्रोसॉफ्ट वर्ड में कॉपी और पेस्ट करना था।

वर्ड में सभी लिगचरिंग को अन्य फॉर्मेटिंग फोंट के साथ बदला जाता है।

मैं उनमें से प्रत्येक के लिए खोज और प्रतिस्थापन का उपयोग करता हूं (जैसे ^ मैनुअल लाइन रुकावट के लिए ^ और मैनुअल पेज रुकावट के लिए और इतने पर, आप सभी आसानी से ऑनलाइन पा सकते हैं) और मैं सही फॉर्म के साथ प्रतिस्थापित करता हूं।

4 या 5 चरणों में मैं सभी संभावनाओं को बहुत जल्दी कवर करता हूं। यह अतिरिक्त पैराग्राफ रुकावटों को दूर करने के लिए भी उपयोगी है (^ P)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.