如何在IPython Notebook中更改字体

53

我对Python比较陌生,对HTML也没有经验。已经有人提出了这个问题,但要么没有得到回答,要么回答的不够详细,让我无法在iPython中设置默认字体(而不是更改浏览器的字体)。具体来说,在CSS文件中必须放置什么内容,应该使用哪个CSS文件?我使用的是Windows系统。

参考以下链接中的SO问题:

  • 在#1中:位于/usr/lib/python2.6/.../css/中未命名的文件
  • 在评论中回答#1:更改浏览器中的等宽字体-可以工作,但字体是斜体的
  • 在#2中custom.css在配置文件子目录/static/custom/custom.css

相关问题:

  1. 更改iPython笔记本字体类型
  2. 更改iPython笔记本的字体和背景颜色
  3. 在iPython笔记本中更改(恢复默认)字体(未回答)-

编辑: 如#1的一个答案评论所建议的,更改浏览器中的等宽字体可以工作。但是字体是斜体的,这不是我们想要的。


1
有很多类似内容的问题,例如这里这里。使用custom.css方法是正确的选择! - Jakob
9个回答

46
你可以将鼠标悬停在 .ipython 文件夹上(例如,在终端/bash 中键入 $ ipython locate 或从 Anaconda Navigator 的 CMD.exe Prompt中查看ipnyhon的位置)
然后,在 .ipython 中,你会看到默认的 profile_default 目录。该目录中有一个名为 static/custom/custom.css 的文件。
你现在可以对这个 custom.css 文件进行更改。该文件中有很多样式可供使用或搜索。例如,你可以查看链接(这是我的自定义custom.css文件)
基本上,这个 custom.css 文件用于更改浏览器。你可以在 ipython 笔记本中使用检查元素来查看要更改哪些元素。然后,你可以将更改应用于 custom.css 文件。例如,你可以添加以下代码块以更改.CodeMirror pre的字体为Monaco
.CodeMirror pre {font-family: Monaco; font-size: 9pt;}

请注意,对于Jupyter notebook版本>=4.1,自定义CSS文件现在已经移动到~/.jupyter/custom/custom.css


12
请注意,现在对于 IPython 版本 >= 4.1,自定义 CSS 文件已经被移动到 ~/.jupyter/custom/custom.css - titipata
8
我需要创建.jupyter/custom/custom.css文件,因为它在我的pip安装中默认不包含此文件。我通过使用wget下载上述模板,然后将其修改为使用等宽字体,以便我能够区分1和l。 - cgseller

15
在JupyterNotebook的单元格中,你可以简单地使用:
%%html
<style type='text/css'>
.CodeMirror{
font-size: 17px;
</style>

10

我建议你探索一下jupyter themer提供的选项。如果你想要进行界面更改,可以运行以下语法:

jupyter-themer [-c COLOR, --color COLOR]
                      [-l LAYOUT, --layout LAYOUT]
                      [-t TYPOGRAPHY, --typography TYPOGRAPHY]

如果你想要改变Jupyter Notebook的外观,themer提供了一种更简便的方式来选择选项。当然,如果你想要应用复杂的更改,你仍然可以编辑.css文件。


但是,我认为jt只允许在其允许列表中的某些字体,并且您只能从中选择。 - truth

6
新的主题文件位置是:~/.jupyter/custom/custom.css

1
这是新的文件位置,并将文件编辑为 .CodeMirror pre { font-family: Anonymous Pro; font-size: 9pt; } - Chandra Kanth
单元格如何设置? - droid192

5
在您的笔记本中(简单方法)。添加以下代码的新单元格。
%%html
<style type='text/css'>
.CodeMirror{
    font-size: 12px;
}

div.output_area pre {
    font-size: 12px;
}
</style>

4
使用Jupyterthemes,可以轻松更改笔记本的外观。
pip install jupyterthemes

jt -fs 15 

默认情况下,代码字体大小设置为11。尝试上述操作会改变字体大小。可以使用以下方法重置字体大小。

jt -r 

这将使所有Jupyter的主题更改恢复为默认值。

我可能错了,但如果您正在使用默认主题,则命令 jt -fs 15 不会在不指定主题 jt -t name_of_the_theme -fs 15 的情况下设置字体大小。因此,我担心 jt 将不允许您重置默认主题的字体大小。 - RandomWalker
这个命令将重置jupyter笔记本的主题为默认值,并不会更改字体大小。更好的用法是jt -t chesterish -fs 14,正如@RandomWalker所建议的那样。 - Alexander Borochkin
jt -t chesterish -fs 14 -ofs 12 更好的命令可以同时更改主要单元格字体大小和输出字体大小。 - Alexander Borochkin

3
除了Konrad在这里提出的建议,我想建议jupyter主题,它似乎有更多的选项,如行高、字体大小、单元格宽度等。
命令行用法:
jt  [-h] [-l] [-t THEME] [-f MONOFONT] [-fs MONOSIZE] [-nf NBFONT]
[-nfs NBFONTSIZE] [-tf TCFONT] [-tfs TCFONTSIZE] [-dfs DFFONTSIZE]
[-m MARGINS] [-cursw CURSORWIDTH] [-cursc CURSORCOLOR] [-vim]
[-cellw CELLWIDTH] [-lineh LINEHEIGHT] [-altp] [-P] [-T] [-N]
[-r] [-dfonts]

-2

对于Chrome用户,这非常简单。

只需在您的操作系统中安装所需的字体。然后打开该浏览器,前往设置 -> 外观 -> 自定义字体。

转到固定宽度字体,并从下拉列表中选择所需的字体。

注意:这可能会更改您访问的网页上其他地方的字体。


-3

有一种更简单的方法可以做到不添加CSS文件和所有其他建议的方法。但是你必须每次启动Jupiter笔记本时都要这样做。

进入浏览器的检查功能,点击元素选择图标,然后点击框。在页面底部,您将看到CSS样式选项,您可以轻松更改字体大小。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接