Jupyter-notebook 导出时不显示Input[]代码

时间:2021-09-04 16:20:55

参考: https://*.com/questions/34818723/export-notebook-to-pdf-without-code
 
  1. 第一个方式是直接在JN(Jupyter-Notebook)的input中写入如下html脚本建立 html的按钮,来决定html页面上是否显示代码,但是这个方式只是影响的显示效果,实际代码在导出为 html或者 PDF时仍是存在的。
  代码如下:

from IPython.display import HTML

  HTML('''<script>
code_show=true;
function code_toggle() {
if (code_show){
$('div.input').hide();
} else {
$('div.input').show();
}
code_show = !code_show
}
$( document ).ready(code_toggle);
</script>
<form action="javascript:code_toggle()"><input type="submit" value="Click here to toggle on/off the raw code."></form>''')

2. 一个比较根本的方式通过上面的参考联结,联结里介绍了不少的方案,选择了其中一个比较有利于实施的,即在需要导出的文件所在目录下,新建一个模板文件 hidecode.tplx 其中的内容如下:

 ((*- extends 'article.tplx' -*))
((* block input_group *))
((*- if cell.metadata.get('nbconvert', {}).get('show_code', False) -*))
((( super() )))
((*- endif -*))
((* endblock input_group *))

之后,在命令行键入:

   $ ipython nbconvert --to latex --template hidecode <UrIPYfilename>.ipynb && xelatex <UrIPYfilename>.tex

PS, 所用系统 UBUNTU1604, TEXLIVE2017.