2014-05-24 108 views
2

我正在寻找添加一个新的按钮到ipython笔记本与自定义图标。IPython笔记本自定义按钮图标

从这question开始,我知道我可以使用custom.js更改自定义按钮的图标。不过,它似乎只限于fontawesome中的可用图标。是否有可能获得自定义按钮图标?

我的理解是,fontawesome使用svg格式,我发现这个question/answer, 描述过程fontawesome,但是这IPython中使用HTML是一个有点不同。

问题仍然是如何可以指向由IPython notebook读取我的icon.svg文件,下面是custom.js一个小例子,添加一个按钮,与生产相关的HTML一起。在custom.js

最小按钮例如:

IPython.toolbar.add_buttons_group([ 
{ 
    'label': 'Create TOC', 
    'icon' : 'icon-list', 
    'callback': function(){ 
    } 
}]); 

线'icon' : 'icon-list',关联到的许多图标fontawesome具有here

IPython的HTML用于上述按钮之一:

<div class="btn-group"> 
    <button class="btn" title="Create TOC"> 
     <i class="icon-list"></i> 
    </button> 
</div> 

有没有一种方法来定制在IPython notebook中添加一个图标,而不必将其添加到fontawesome

+0

请检查这篇文章:http://stackoverflow.com/questions/20290369/ipython-notebook-toolbar-customize –

+0

@VyacheslavYudanov我已经跟随这谢谢张贴你! – pyCthon

回答

1

从技术上讲,这是可行的,但稍微牵涉到你所期望的。 你需要使用像icomoon或fontforge这样的smth来创建自己的webfont版本,将其导出为字体和css文件(该css文件可能希望使用与unicode不同的专用平面区域FA使用)。

由于IPython 2.x及以上版本支持requirejs,因此可以使用一些技巧加载自定义字体和css。然后假设您使用前缀cf,则可以使用icon:'cf-awesomeicon'

所以,你想知道的第一件事就是:

  • 如何创建自定义web字体。其余的(几乎)是小菜一碟。

然后请参阅here为加载css(加载css应该自动拉字体)的笔记本扩展。