블로그로 돌아가기

Jupyter Notebook Export to PDF: 5 Methods That Actually Work (2026)

Beyond nbconvert: five reliable ways to export a Jupyter Notebook to PDF in 2026 — from the classic CLI to browser-based converters, with pros and cons for each.

  • #jupyter
  • #export
  • #guide

The "export to PDF" button in JupyterLab is a lie — or rather, it's a thin wrapper around nbconvert that quietly assumes you've already installed a 3 GB LaTeX distribution. If that's not your situation, don't worry: there are at least five reliable paths from .ipynb to PDF, and most of them skip LaTeX entirely.

Here's the current (2026) landscape, ranked roughly from most-convenient to most-tweakable.

Method 1 — Online Converter (Fastest)

A browser-based converter like ipynbtopdf.org handles everything server-side.

  1. Open the site.
  2. Drag in your .ipynb.
  3. Download the PDF ~3 seconds later.

Pros: Zero install, works on any OS including mobile, renders code highlighting + matplotlib + LaTeX correctly. Cons: Requires internet. You should trust the provider's deletion policy.

This is the right default for students, one-off reports, and anyone on a managed laptop where installing TeX is blocked.

Method 2 — nbconvert --to webpdf (No LaTeX Required)

If you have Python but not LaTeX, use nbconvert's newer webpdf exporter, which renders via headless Chromium instead of TeX.

pip install "nbconvert[webpdf]"
playwright install chromium
jupyter nbconvert --to webpdf notebook.ipynb

Pros: No LaTeX dependency, output looks like JupyterLab's on-screen render, fully local. Cons: You still need ~300 MB for Chromium and the playwright install step trips some users up.

Method 3 — HTML Export + Browser Print

Old reliable. Export to HTML, open in Chrome, print to PDF.

jupyter nbconvert --to html notebook.ipynb

Then open the HTML and Cmd/Ctrl + P → Save as PDF.

Pros: No extra dependencies, total control over print CSS. Cons: Manual step. Wide tables and cell outputs need custom CSS to look right. Cell numbering often disappears.

Method 4 — Classic nbconvert --to pdf (LaTeX)

The canonical path. If you already have a working TeX install, this is still the most faithful renderer.

jupyter nbconvert --to pdf notebook.ipynb

Pros: Excellent output quality, highly customizable via templates. Cons: Requires MacTeX / TeX Live / MiKTeX (2–4 GB). Expect your first few conversions to fail with xelatex not found or Unicode errors — see our nbconvert troubleshooting guide.

Method 5 — VS Code Jupyter Extension

If you're already editing notebooks in VS Code, the Jupyter extension adds a right-click "Export to PDF" action.

Pros: Integrated into your editor. Cons: By default it still shells out to nbconvert + LaTeX, so you inherit the same setup burden. You can reconfigure it to use webpdf, but most users don't realize that.

Which One Should You Use?

SituationPick
No Python, no LaTeX, just need a PDF nowipynbtopdf.org
Python installed, but no LaTeXnbconvert --to webpdf
Full local toolchain, want maximum fidelitynbconvert --to pdf
Already in VS CodeExtension's "Export to PDF"
Want to hand-tune print CSSHTML export + browser print

A Note on Output Quality

Whichever path you choose, the PDF is only as good as the notebook it comes from. Before exporting:

  • Run all cells so outputs are present.
  • Keep wide DataFrames narrow with df.head() or df.iloc[:, :10].
  • Bump matplotlib font sizesplt.rcParams.update({'font.size': 14}) — for print.
  • Use markdown headings (#, ##) so the PDF has structure.

These four habits will make every method above produce a better PDF.

Conclusion

There's never been a better time to export Jupyter Notebooks to PDF. You no longer need a LaTeX install to get a professional-looking result — webpdf and online converters have closed the quality gap. Pick the method that fits your environment, and you'll never dread the export step again.

Jupyter Notebook Export to PDF: 5 Methods That Actually Work (2026) | IPYNB to PDF 변환기