11

我有一个格式很好的 ipython 笔记本,里面有 markdown 单元格之类的东西。我想知道在导出到 PDF 文件方面我的选择是什么。

到目前为止,我一直在File > Print View使用 chromium 的“保存到文件”功能将结果页面打印为 PDF。这在技术上是可行的,但它有一个主要的不便之处:我的数字、代码和降价单元格经常被分页符分割。

是否有其他解决方案可以让我拥有一个连续的 PDF 文件?

编辑: 我遇到了nbconvert,但是当我不断收到“找不到文件”错误时。有人对 nbconvert 有任何运气吗?该文档声称支持导出为 PDF,但是当我运行时nbconvert.py -f pdf,错误消息表明 PDF 格式实际上不受支持。

4

4 回答 4

13

您可以使用 ipython 来执行此操作,例如命令:

ipython nbconvert notebookname.ipynb --to latex --post pdf

将 notebookname.ipynb 转换为 pdf。但是,它确实要求您运行最新版本的 texlive(即 texlive 2013)才能拥有支持软件。请注意,Ubuntu 12.04 随附来自其存储库的 texlive 2009。2013 可以直接从 CTAN 安装,只需按照这些说明进行操作。然后你就可以开始运行了,它看起来很棒。

于 2014-01-30T00:55:50.007 回答
9

您不能直接将ipynb转换为pdf,因此错误消息是正确的!您需要先将其转换为 latex:nbconvert.py -f latex your_nb.ipynb然后用于pdflatex your_nb.tex构建 pdf 文件。

希望能帮助到你。

于 2013-01-18T09:22:36.497 回答
3

如果所有其他方法都失败了,因为 tex 可能会很喜怒无常...安装 wkhtmltopdf

\i 然后使用 nbconvert 创建一个 html,然后使用 wkhtmltopdf 创建 pdf。

于 2013-09-11T20:20:12.333 回答
1

如果您经常转换笔记本,这里有一个脚本,它使用 wkhtmltopdf 将选定的笔记本转换为 HTML 和 PDF。安装wkhtmltopdf 后,将此脚本保存在与笔记本相同的文件夹中,并在您想要快速转换笔记本时运行它。

于 2014-12-30T19:28:40.060 回答