关于当前模板依赖/扩展结构的注释:

关于当前模板依赖/扩展结构的注释:

我使用 nbconvert 从 Jupyter Notebook 生成了 latex 文件。我需要在所有 Verbatim (fancyvrb) 环境中更改字体大小。我试过了,但不知道有什么效果。

以下是 tex 文件中的所有设置http://pastebin.com/ThaeQEgc。我不知道把 放哪儿fontsize=\scriptsize

谢谢。

答案1

如果你使用 nbconvert,最容易配置 tex 输出的方法是将.ipynb文件转换为文件.tex,然后在转换为 pdf 之前直接对其进行编辑。

然而,这需要大量的手工工作,而且不容易复制。没有人喜欢这样。

稍微复杂的解决方案是使用自定义模板文件并将其用于导出(通过使用标志--template=my_template_file.tplx)。

编辑:我能想到的最快方法有 6 个步骤:

  1. 复制document_contents.tplx到新文件并更改调用\begin{Verbatim}以包含您想要的任何选项。另存为单独的文件(例如my_document_contents.tplx)。
  2. 复制base.tplx到新文件并扩展它my_document_contents.tplx而不是document_contents.tplx。另存为单独的文件(例如my_base.tplx
  3. 复制style_ipython.tplx到新文件。将其扩展的文件更改为my_base.tplx,更改调用\begin{Verbatim}以包含您想要的任何选项。另存为单独的文件(例如my_style_ipython.tplx)。
  4. 复制article.tplx到一个新文件并将其扩展my_style_ipython.tplx。保存为单独的文件(例如my_article.tplx)。
  5. 确保所有这些模板都在您的模板路径上...(这是一个更复杂的话题......最简单的解决方案是将它们放在您用于调用命令的同一目录中jupyter nbconvert)。
  6. 使用 调用 nbconvert --template my_article.tplx

关于当前模板依赖/扩展结构的注释:

nbconvert 依赖于基于 Jinja 的模板和模板继承。当涉及到 LaTeX 模板时,这会产生一些缺点(这在很大程度上是它无法更直接地进行配置的原因……正在努力解决这个问题 :))。

首先,看一下base.tplx查看当前前导码的创建位置。

您可能需要添加类似document_contents.tplx为了确保您的输出正确显示。base.tplx扩展这一点,所以您可能不需要改变任何东西……只是要注意,对于您的特定用例来说,这可能是必要的。

单元格将根据所选的单元格样式进行格式化(默认为style_ipython.tplx),它直接扩展了base.tplx模板。

最后,它并没有发生太多事情,但是如果你使用LatexExporter(如果你使用直接到 pdf 转换,我猜你是这样的)你正在通过article.tplx。关于这一点最有用的部分是它给出了一个示例,说明如何动态确定从哪些其他模板继承。

答案2

如果你想编辑单个生成的.tex文件,你可以在前言中添加

\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\footnotesize}

全局更改所有 Verbatim 环境的字体大小。

相关内容