असाइनमेंट Jupyter में पूरा हो गया, पर सबमिशन पोर्टल को PDF चाहिए। आप "PDF के रूप में डाउनलोड करें" चुनते हैं या jupyter nbconvert --to pdf चलाते हैं, और एरर मिलता है: xelatex नहीं मिला, या pandoc मौजूद नहीं है। nbconvert PDF बनाने के लिए LaTeX का इस्तेमाल करता है, इसलिए कुछ भी एक्सपोर्ट करने से पहले उसे पूरा TeX डिस्ट्रिब्यूशन इंस्टॉल चाहिए।
अब Look Scanned सीधे .ipynb फ़ाइलें खोल सकता है। Jupyter Notebook से स्कैन जैसा PDF पेज पर अपनी नोटबुक चुनें, और वह आपके ब्राउज़र में ही पृष्ठों में सज जाती है: Markdown सेल, कोड, और फ़ाइल के साथ सेव हुए आउटपुट। प्रीव्यू में पृष्ठ जाँचें और PDF डाउनलोड करें। कुछ भी इंस्टॉल नहीं करना है, और नोटबुक कहीं अपलोड नहीं होती।
पहले एक बात साफ़ कर दें: Look Scanned दस्तावेज़ों को स्कैन किया हुआ दिखाता है, इसलिए PDF भी वैसा ही दिखता है। यह उस नोटबुक के लिए सही है जिसे प्रिंट करके स्कैन की गई कॉपी के रूप में जमा करना हो, या जिसे बस काग़ज़ जैसा दिखना हो। साफ़ पृष्ठ के लिए आप घुमाव, धुंधलापन और नॉइज़ को शून्य तक घटा सकते हैं, पर हर पृष्ठ फिर भी एक छवि ही रहता है, इसलिए PDF का टेक्स्ट न चुना जा सकता है, न खोजा जा सकता है।
.ipynb फ़ाइल को स्कैन जैसे PDF में कैसे बदलें
- नोटबुक को Jupyter, JupyterLab, VS Code या Google Colab में चलाएँ और सेव करें, ताकि आउटपुट फ़ाइल में सहेजे जाएँ। Colab में फ़ाइल → डाउनलोड करें → .ipynb डाउनलोड करें का इस्तेमाल करें।
- Jupyter Notebook से स्कैन जैसा PDF खोलें और
.ipynbफ़ाइल चुनें। - प्रीव्यू को पृष्ठ-दर-पृष्ठ देखें। कोड, टेबल और चार्ट जाँचें, और काग़ज़ का आकार व मार्जिन सेट करें।
- स्कैन इफ़ेक्ट एडजस्ट करें। धुंधलापन और नॉइज़ कम रखें, ताकि छोटे अक्षरों वाला कोड पढ़ा जा सके। डिफ़ॉल्ट रूप से पृष्ठ ग्रेस्केल में आते हैं; चार्ट के रंग बनाए रखने हों तो "रंगीन" चुनें।
- स्कैन जैसा PDF बनाएँ और डाउनलोड करें।
अगर आपको छवियाँ चाहिए, तो हर पृष्ठ को JPG या PNG के रूप में एक्सपोर्ट कर सकते हैं। हमारी PDF, JPG और PNG की गाइड बताती है कि कब कौन-सा ठीक रहता है। Pro के साथ बल्क स्कैन एक साथ कई .ipynb फ़ाइलें संभाल लेता है।
पृष्ठ पर क्या दिखता है
- Markdown सेल: हेडिंग, सूचियाँ, टेबल, लिंक और छवियाँ, उन छवियों समेत जो सीधे सेल में पेस्ट की गई हों।
- कोड सेल, नोटबुक की प्रोग्रामिंग भाषा के हिसाब से सिंटैक्स हाइलाइटिंग और
In [1]:प्रॉम्प्ट के साथ। लंबी पंक्तियाँ पृष्ठ से बाहर जाने के बजाय अगली पंक्ति में लिपट जाती हैं। - सेव किए गए आउटपुट,
Out[1]:प्रॉम्प्ट के नीचे: प्रिंट किया गया टेक्स्ट, रिटर्न वैल्यू, pandas DataFrame जैसी HTML टेबल, और छवियाँ, इसलिए matplotlib या seaborn के चार्ट भी आ जाते हैं। - एरर, पूरे traceback के साथ।
- टर्मिनल आउटपुट वैसा ही जैसा टर्मिनल दिखाता है। रंग वाले कोड हटा दिए जाते हैं, और tqdm जैसी प्रोग्रेस बार हर अपडेट नहीं, सिर्फ़ अपनी आख़िरी स्थिति दिखाती है।
शुरू करने से पहले क्या जानें
- सेल चलाए नहीं जाते। Look Scanned वही पढ़ता है जो फ़ाइल में सेव है; इसमें कोई कर्नेल नहीं है। जो सेल आपने कभी नहीं चलाया, या जो नोटबुक आउटपुट साफ़ करके सेव की गई, उसमें सिर्फ़ कोड दिखेगा, नीचे कुछ नहीं। फ़ाइल चुनने से पहले सारे सेल चलाकर सेव कर लें।
- फ़ॉर्मूले TeX सोर्स के रूप में ही रहते हैं। Markdown सेल में
$…$या$$…$$के रूप में लिखे फ़ॉर्मूले ठीक वैसे ही दिखते हैं जैसे टाइप किए गए, जैसे$\alpha + \beta$, गणितीय रूप में सजकर नहीं। - इंटरैक्टिव आउटपुट नहीं दिखते। Plotly, Bokeh और ipywidgets JavaScript से बनते हैं, और JavaScript चलाया नहीं जाता। आपको वह स्थिर संस्करण दिखेगा जो नोटबुक ने साथ में सेव किया था, अक्सर बस एक छोटी-सी टेक्स्ट पंक्ति, या कुछ भी नहीं। छवि के रूप में सेव होने वाले चार्ट, जैसे matplotlib के, ठीक दिखते हैं।
- नोटबुक nbformat 4 में होनी चाहिए। Jupyter, JupyterLab, VS Code और Colab के मौजूदा संस्करण यही फ़ॉर्मैट सेव करते हैं। बहुत पुरानी nbformat 3 नोटबुक स्वीकार नहीं होती; उसे किसी नए Jupyter में खोलकर दोबारा सेव करें, वह अपग्रेड हो जाएगी।
- चौड़ी टेबल सिकुड़ जाती हैं। टेबल पृष्ठ की चौड़ाई में फ़िट की जाती हैं, इसलिए कई कॉलम वाले DataFrame के कॉलम पतले हो जाते हैं और टेक्स्ट लिपट जाता है।
- अपनी नोटबुक संभालकर रखें। असली स्कैन की तरह यह PDF भी पृष्ठों की छवियों से बना है। कोड चलाने और बदलने के लिए
.ipynbफ़ाइल रखें।
नोटबुक आपके अपने डिवाइस पर ही पढ़ी और सजाई जाती है, किसी सर्वर पर अपलोड नहीं होती। इकलौता अपवाद ऐसा Markdown सेल है जो वेब पते से कोई छवि दिखाता है: वह छवि आपका ब्राउज़र उस साइट से लाता है जहाँ वह रखी है, ठीक वैसे ही जैसे Jupyter लाता।
कब nbconvert बेहतर विकल्प है
अगर आपको चुना जा सकने वाला टेक्स्ट, ठीक से सजे फ़ॉर्मूले, या Jupyter के अपने एक्सपोर्ट जैसा हूबहू PDF चाहिए, तो nbconvert अब भी सही टूल है। कोई TeX डिस्ट्रिब्यूशन इंस्टॉल करके jupyter nbconvert --to pdf चलाएँ, या --to webpdf इस्तेमाल करें, जो बिना इंटरफ़ेस वाले (headless) Chromium ब्राउज़र से प्रिंट करता है और LaTeX की ज़रूरत ही नहीं पड़ती। दोनों में से किसी भी तरीके के बाद आप उस PDF पर Look Scanned में स्कैन इफ़ेक्ट जोड़ सकते हैं।
आपका काम नोटबुक के बजाय Markdown या LaTeX फ़ाइल में है? वे भी खुलती हैं: Markdown और HTML से स्कैन जैसा PDF और LaTeX से स्कैन जैसा PDF देखें।
कोई नोटबुक है जिसे PDF के रूप में जमा करना है? अभी आज़माएँ।