尝试使用以下命令将jupyter笔记本转换为pdf时:
<%= link_to remove_document_path(document), :method => :put do %>
<span class="fa fa-trash text-danger"></span>
<% end %>
我收到一条错误消息:
jupyter nbconvert --to pdf "Search and Other Content Finding Features.ipynb"
我找到了一些关于here的讨论。
但是,我在代码中找不到这些字符。还有其他原因吗?
答案 0 :(得分:1)
对我来说,这是LaTeX和MathJax之间的显着差异引起的。例如,可以使用MathJax在数学模式之外渲染cases
环境,这是jupyter笔记本电脑的默认选择。但是,这会导致错误,指出在LaTeX中“缺少$
插入”。更正Markdown单元中的语法后,错误消息消失了。
答案 1 :(得分:0)
这种情况下的问题似乎是由我的笔记本文件名引起的。我不完全理解导致问题的原因,但上面的错误消息包含对某些文字的引用:
... Other Content Finding Features_10_0.png}
。
该文字包含可导致此错误的_
。我认为发生的事情是转换脚本中的某个地方,如果文件名中有空格,则生成带有下划线的文件,如图所示,然后触发错误。 (这似乎有点像我的错误,或者至少是一个弱点)。
对我有用的修复只是改变jupyter笔记本的文件名,不包括任何空格。然后转换顺利进行。
答案 2 :(得分:0)
对我来说,这是另一个尽管相关的问题:强调。我认为原因是标记为“原始文本”的单元格中的文本将直接传递到LaTeX,在这里它可以解释为LaTeX代码本身。也许是图形名称中的下划线?
___
的原始单元格,它们随后使转换中断。临时的解决方案是将单元格转换为降价,而不是原始(而不是运行它)以显示在pdf中。 要查找错误,我使用了以下转换(taken from this answer):
jupyter nbconvert thenotebook.ipynb --to latex
[text](https://en.wikipedia.org/wiki/Python_(programming_language))
这也位于Raw Text单元格中,我将其转换为markdown以生成pdf。格式(颜色,链接)不同。