Il compito è pronto in Jupyter e la piattaforma di consegna vuole un PDF. Scegli “Scarica come PDF” oppure esegui jupyter nbconvert --to pdf e compare un errore: xelatex non trovato, oppure manca pandoc. nbconvert crea i suoi PDF passando per LaTeX, quindi ha bisogno di una distribuzione TeX completa installata prima di produrre qualsiasi cosa.

Look Scanned ora apre direttamente i file .ipynb. Seleziona il tuo notebook nella pagina Da Jupyter Notebook a PDF scansionato e viene impaginato direttamente nel browser: le celle Markdown, il codice e gli output salvati insieme al file. Controlla le pagine nell’anteprima e scarica un PDF. Non c’è niente da installare e il notebook non viene caricato da nessuna parte.

Una precisazione subito: Look Scanned fa sembrare scansionati i documenti, ed è questo l’aspetto del PDF. È perfetto per un notebook da consegnare come copia stampata e scansionata, o che deve semplicemente sembrare cartaceo. Puoi portare a zero rotazione, sfocatura e rumore per una pagina più pulita, ma ogni pagina resta un’immagine, quindi il testo del PDF non si può selezionare né cercare.

Come convertire un file .ipynb in PDF scansionato

  1. Esegui il notebook e salvalo in Jupyter, JupyterLab, VS Code o Google Colab, così gli output restano memorizzati nel file. In Colab usa File → Scarica → Scarica .ipynb.
  2. Apri Da Jupyter Notebook a PDF scansionato e seleziona il file .ipynb.
  3. Scorri l’anteprima pagina per pagina. Controlla codice, tabelle e grafici e imposta formato carta e margini.
  4. Regola l’effetto di scansione. Tieni bassi sfocatura e rumore perché il codice piccolo resti leggibile. Le pagine escono in scala di grigi per impostazione predefinita; scegli “Colorato” per mantenere i colori dei grafici.
  5. Genera il PDF scansionato e scaricalo.

Se preferisci le immagini, puoi esportare ogni pagina in JPG o PNG. La nostra guida a PDF, JPG e PNG spiega quando conviene ciascun formato. Con Pro, la scansione in blocco elabora più file .ipynb alla volta.

Che cosa compare sulla pagina

  • Celle Markdown: titoli, elenchi, tabelle, link e immagini, comprese quelle incollate direttamente in una cella.
  • Celle di codice, con l’evidenziazione della sintassi per il linguaggio del notebook e i prompt In [1]:. Le righe lunghe vanno a capo invece di uscire dalla pagina.
  • Output salvati, sotto i prompt Out[1]:: testo stampato, valori restituiti, tabelle HTML come i DataFrame di pandas e immagini, quindi i grafici di matplotlib o seaborn ci sono.
  • Errori, con il traceback completo.
  • L’output del terminale come lo mostra un terminale. I codici colore vengono tolti e una barra di avanzamento come tqdm conserva solo lo stato finale, non ogni aggiornamento.

Cosa sapere prima di iniziare

  • Le celle non vengono eseguite. Look Scanned legge ciò che è salvato nel file; non c’è un kernel. Una cella mai eseguita, o un notebook salvato dopo aver cancellato gli output, mostra il codice senza nulla sotto. Esegui tutte le celle e salva prima di selezionare il file.
  • Le formule restano in sorgente TeX. Le formule scritte come $…$ o $$…$$ nelle celle Markdown compaiono così come sono state digitate, per esempio $\alpha + \beta$, e non composte come formule matematiche.
  • Gli output interattivi non vengono mostrati. Plotly, Bokeh e ipywidgets disegnano con JavaScript, che non viene eseguito. Ottieni la versione statica che il notebook ha salvato insieme, spesso solo una breve riga di testo, o addirittura niente. I grafici salvati come immagini, come quelli di matplotlib, vanno benissimo.
  • Il notebook deve essere in nbformat 4. È il formato che salvano le versioni attuali di Jupyter, JupyterLab, VS Code e Colab. Un notebook molto vecchio in nbformat 3 viene rifiutato; aprilo in un Jupyter recente e salvalo di nuovo per aggiornarlo.
  • Le tabelle larghe vengono strette. Le tabelle si adattano alla larghezza della pagina, quindi un DataFrame con molte colonne finisce con colonne strette e testo a capo.
  • Tieni il tuo notebook. Come una vera scansione, il PDF è fatto di immagini delle pagine. Conserva il file .ipynb per eseguire e modificare il codice.

Il notebook viene letto e impaginato sul tuo dispositivo e non viene caricato su alcun server. L’unica eccezione è una cella Markdown che mostra un’immagine tramite il suo indirizzo web: il browser scarica quell’immagine dal sito che la ospita, proprio come farebbe Jupyter.

Quando conviene usare nbconvert

Se ti servono testo selezionabile, formule composte o un PDF identico all’esportazione di Jupyter, nbconvert resta lo strumento giusto. Installa una distribuzione TeX ed esegui jupyter nbconvert --to pdf, oppure usa --to webpdf, che stampa tramite un browser Chromium headless e fa del tutto a meno di LaTeX. In entrambi i casi, puoi poi aggiungere l’effetto di scansione a quel PDF in Look Scanned.

Il tuo elaborato è un file Markdown o LaTeX invece di un notebook? Si aprono anche quelli: leggi Da Markdown e HTML a PDF scansionato e Da LaTeX a PDF scansionato.

Hai un notebook da consegnare in PDF? Provalo ora.