A beadandó elkészült Jupyterben, a beadási felület viszont PDF-et kér. Rákattintasz a „Letöltés PDF-ként” lehetőségre, vagy futtatod a jupyter nbconvert --to pdf parancsot, és hibaüzenetet kapsz: nem található az xelatex, vagy hiányzik a pandoc. Az nbconvert LaTeX-en keresztül készíti a PDF-eket, ezért egy teljes, telepített TeX-disztribúcióra van szüksége, mielőtt bármit is kiadna.

A Look Scanned mostantól közvetlenül megnyitja az .ipynb fájlokat. Válaszd ki a notebookodat a Jupyter Notebookból szkennelt PDF oldalon, és az rögtön a böngésződben kerül tördelésre: a Markdown-cellák, a kód és a vele együtt mentett kimenetek. Nézd át az oldalakat az előnézetben, majd töltsd le a PDF-et. Semmit sem kell telepíteni, és a notebook nem kerül feltöltésre.

Egy dolgot rögtön az elején: a Look Scanned szkenneltnek láttatja a dokumentumokat, így a PDF is ilyen lesz. Ez éppen jó, ha a notebookot kinyomtatott és beszkennelt példányként kell beadni, vagy egyszerűen papírnak kell látszania. Az elforgatást, az elmosást és a zajt nullára is leveheted a tisztább oldalért, de minden oldal továbbra is kép, így a PDF szövege nem jelölhető ki, és nem lehet benne keresni.

Hogyan lesz egy .ipynb fájlból szkennelt PDF?

  1. Futtasd le a notebookot, és mentsd el Jupyterben, JupyterLabben, VS Code-ban vagy a Google Colabban, hogy a kimenetek bekerüljenek a fájlba. Colabban a Fájl → Letöltés → .ipynb letöltése menüpontot használd.
  2. Nyisd meg a Jupyter Notebookból szkennelt PDF oldalt, és válaszd ki az .ipynb fájlt.
  3. Lapozd végig az előnézetet oldalanként. Ellenőrizd a kódot, a táblázatokat és a diagramokat, és állítsd be a papírméretet és a margókat.
  4. Állítsd be a szkennelési effektust. Az elmosást és a zajt tartsd alacsonyan, hogy az apró betűs kód is olvasható maradjon. Az oldalak alapértelmezés szerint szürkeárnyalatosak; válaszd a „Színes” módot, ha a diagramoknak meg kell tartaniuk a színeiket.
  5. Készítsd el a szkennelt PDF-et, és töltsd le.

Ha inkább képeket szeretnél, minden oldalt exportálhatsz JPG- vagy PNG-fájlként. A PDF-, JPG- és PNG-útmutatónk elmagyarázza, melyik mikor hasznos. Pro-előfizetéssel a Tömeges szkennelés egyszerre több .ipynb fájlt is feldolgoz.

Mi jelenik meg az oldalon?

  • Markdown-cellák: címsorok, listák, táblázatok, hivatkozások és képek, a cellába közvetlenül beillesztett képeket is beleértve.
  • Kódcellák a notebook nyelvéhez illő szintaxiskiemeléssel és az In [1]: jelölésekkel. A hosszú sorok tördelődnek, nem lógnak le az oldalról.
  • Mentett kimenetek az Out[1]: jelölések alatt: kiírt szöveg, visszatérési értékek, HTML-táblázatok, például pandas DataFrame-ek, és képek, így a matplotlib- vagy seaborn-diagramok is megjelennek.
  • Hibák a teljes tracebackkel együtt.
  • A terminálkimenet úgy, ahogy egy terminál mutatja. A színkódok eltűnnek, a tqdm-hez hasonló folyamatjelző sávokból pedig csak a végső állapot marad meg, nem minden egyes frissítés.

Amit érdemes tudni, mielőtt belevágsz

  • A cellák nem futnak le. A Look Scanned azt olvassa be, ami a fájlba el van mentve; kernel nincs. Egy soha le nem futtatott cella, vagy egy törölt kimenetekkel mentett notebook csak a kódot mutatja, alatta semmit. Futtasd le az összes cellát, és ments, mielőtt kiválasztod a fájlt.
  • A képletek TeX-forrásként maradnak. A Markdown-cellákban $…$ vagy $$…$$ formában írt képletek pontosan úgy jelennek meg, ahogy begépelték őket, például $\alpha + \beta$, nem pedig szedett matematikai képletként.
  • Az interaktív kimenetek nem jelennek meg. A Plotly, a Bokeh és az ipywidgets JavaScripttel rajzol, az pedig nem fut le. Azt a statikus változatot látod, amelyet a notebook mellé mentett, ami sokszor csak egy rövid szövegsor, vagy semmi. A képként mentett diagramok, például a matplotlib-ábrák, rendben vannak.
  • A notebooknak nbformat 4 formátumúnak kell lennie. Ezt írják a Jupyter, a JupyterLab, a VS Code és a Colab mai verziói. Egy nagyon régi, nbformat 3 formátumú notebookot elutasít; nyisd meg egy friss Jupyterben, és mentsd el újra a frissítéshez.
  • A széles táblázatok összenyomódnak. A táblázatok az oldal szélességéhez igazodnak, így egy sok oszlopos DataFrame keskeny, tördelt oszlopokat kap.
  • Tartsd meg a notebookot. Egy valódi szkenneléshez hasonlóan a PDF oldalképekből áll. A kód futtatásához és szerkesztéséhez őrizd meg az .ipynb fájlt.

A notebook beolvasása és tördelése a saját eszközödön történik, és nem kerül fel semmilyen szerverre. Az egyetlen kivétel egy olyan Markdown-cella, amely webcímmel jelenít meg egy képet: ezt a képet a böngésződ tölti le arról az oldalról, ahol tárolják, ugyanúgy, ahogy a Jupyter is tenné.

Mikor jobb választás az nbconvert?

Ha kijelölhető szövegre, szedett képletekre vagy a Jupyter saját exportjával pontosan egyező PDF-re van szükséged, továbbra is az nbconvert a megfelelő eszköz. Telepíts egy TeX-disztribúciót, és futtasd a jupyter nbconvert --to pdf parancsot, vagy használd a --to webpdf lehetőséget, amely egy grafikus felület nélküli Chromium böngészőn keresztül nyomtat, és egyáltalán nincs szüksége LaTeX-re. Mindkét esetben utána a Look Scannedben szkennelési effektust adhatsz a kapott PDF-hez.

A dolgozatod nem notebook, hanem Markdown- vagy LaTeX-fájl? Ezek is megnyithatók: lásd a Markdownból és HTML-ből szkennelt PDF és a LaTeX-ből szkennelt PDF cikket.

Van egy notebookod, amelyet PDF-ként kell beadnod? Próbáld ki most.