O trabalho ficou pronto no Jupyter, e o portal de entrega pede um PDF. Você escolhe “Baixar como PDF” ou executa jupyter nbconvert --to pdf e recebe um erro: xelatex não encontrado, ou pandoc ausente. O nbconvert gera os PDFs por meio do LaTeX, por isso precisa de uma distribuição TeX completa instalada antes de produzir qualquer coisa.

Agora o Look Scanned abre arquivos .ipynb diretamente. Selecione seu notebook na página Jupyter Notebook para PDF digitalizado e ele é diagramado ali mesmo, no navegador: as células Markdown, o código e as saídas salvas junto com ele. Confira as páginas na pré-visualização e baixe um PDF. Não há nada para instalar, e o notebook não é enviado para lugar nenhum.

Um esclarecimento logo de início: o Look Scanned faz documentos parecerem digitalizados, e é assim que o PDF fica. Isso serve bem para um notebook que precisa ser entregue como cópia impressa e digitalizada, ou que simplesmente deve parecer papel. Você pode zerar a rotação, o desfoque e o ruído para ter uma página mais limpa, mas cada página continua sendo uma imagem, então o texto do PDF não pode ser selecionado nem pesquisado.

Como converter um arquivo .ipynb em PDF digitalizado

  1. Execute o notebook e salve-o no Jupyter, JupyterLab, VS Code ou Google Colab, para que as saídas fiquem gravadas no arquivo. No Colab, use Arquivo → Fazer download → Baixar o .ipynb.
  2. Abra Jupyter Notebook para PDF digitalizado e selecione o arquivo .ipynb.
  3. Percorra a pré-visualização página por página. Confira o código, as tabelas e os gráficos, e defina o tamanho do papel e as margens.
  4. Ajuste o efeito de digitalização. Mantenha o desfoque e o ruído baixos para que o código em letra pequena continue legível. As páginas saem em escala de cinza por padrão; escolha “Colorido” para manter as cores dos gráficos.
  5. Gere o PDF digitalizado e baixe-o.

Se preferir imagens, você pode exportar cada página como JPG ou PNG. O nosso guia de PDF, JPG e PNG explica quando usar cada um. Com o Pro, a digitalização em lote processa vários arquivos .ipynb de uma vez.

O que aparece na página

  • Células Markdown: títulos, listas, tabelas, links e imagens, inclusive as coladas diretamente em uma célula.
  • Células de código, com destaque de sintaxe para a linguagem do notebook e seus prompts In [1]:. Linhas longas quebram em vez de ultrapassar a página.
  • Saídas salvas, sob os prompts Out[1]:: texto impresso, valores de retorno, tabelas HTML como DataFrames do pandas e imagens, então os gráficos do matplotlib ou do seaborn aparecem.
  • Erros, com o traceback completo.
  • A saída do terminal como um terminal a mostra. Os códigos de cor são removidos, e uma barra de progresso como a do tqdm mantém só o estado final, em vez de cada atualização.

O que saber antes de começar

  • As células não são executadas. O Look Scanned lê o que está salvo no arquivo; não há kernel. Uma célula que você nunca executou, ou um notebook salvo com as saídas apagadas, mostra o código sem nada embaixo. Execute todas as células e salve antes de selecionar o arquivo.
  • As fórmulas continuam como código TeX. Fórmulas escritas como $…$ ou $$…$$ em células Markdown aparecem exatamente como foram digitadas, por exemplo $\alpha + \beta$, e não como matemática diagramada.
  • Saídas interativas não aparecem. Plotly, Bokeh e ipywidgets desenham com JavaScript, que não é executado. Você vê a versão estática que o notebook salvou junto, muitas vezes apenas uma linha curta de texto, ou nada. Gráficos salvos como imagem, como os do matplotlib, funcionam normalmente.
  • O notebook precisa ser nbformat 4. É o que as versões atuais do Jupyter, JupyterLab, VS Code e Colab gravam. Um notebook muito antigo em nbformat 3 é recusado; abra-o em um Jupyter atual e salve de novo para atualizá-lo.
  • Tabelas largas ficam espremidas. As tabelas são ajustadas à largura da página, então um DataFrame com muitas colunas fica com colunas estreitas e texto quebrado.
  • Guarde o seu notebook. Assim como uma digitalização de verdade, o PDF é feito de imagens das páginas. Mantenha o arquivo .ipynb para executar e editar o código.

O notebook é lido e diagramado no seu próprio dispositivo e não é enviado a nenhum servidor. A única exceção é uma célula Markdown que exibe uma imagem pelo endereço na web: o seu navegador busca essa imagem no site que a hospeda, como o Jupyter faria.

Quando o nbconvert é a melhor escolha

Se você precisa de texto selecionável, fórmulas diagramadas ou um PDF idêntico à exportação do próprio Jupyter, o nbconvert continua sendo a ferramenta certa. Instale uma distribuição TeX e execute jupyter nbconvert --to pdf, ou use --to webpdf, que imprime por meio de um navegador Chromium sem interface e dispensa o LaTeX por completo. Em ambos os casos, depois você pode adicionar o efeito de digitalização a esse PDF no Look Scanned.

O seu trabalho é um arquivo Markdown ou LaTeX, e não um notebook? Eles também abrem: veja Markdown e HTML para PDF digitalizado e LaTeX para PDF digitalizado.

Tem um notebook que precisa ser entregue em PDF? Experimente agora.