python把ipynb文件转换成pdf文件过程详解


Posted in Python onJuly 09, 2019

这两天一直在做课件,我个人一直不太喜欢PPT这个东西……能不用就不用,我个人特别崇尚极简风。

谁让我们是程序员呢,所以就爱上了Jupyter写课件,讲道理markdown也是个非常不错的写书格式啊。

安装Jupyter其实非常简单,你会python就应该会用jupyter,起码简单的 pip install jupyter, jupyter notebook 要会对伐~

好那接下来就是使用jupyter了,启动jupyter后,使用浏览器访问相应IP:Port就可以使用了。没错,jupyter就是这么一个可以用网站来写python的地方。

python把ipynb文件转换成pdf文件过程详解

但是发讲义给同学们看,ipynb格式的文件肯定不方便啊,别人还没上课呢,哪知道那么多?再者PDF传阅起来也随时随地能打开啊。所以我就想转换成PDF。

但是打开文件,点击下载,发现出现了Error

python把ipynb文件转换成pdf文件过程详解

python把ipynb文件转换成pdf文件过程详解

然后照着这个Error,就去谷歌了,发现说的最多的就是要装一个latex环境,mac下完整的安装包要将近3个G!我就为了一个PDF还不需要这么大一个包吧?所以寻思其他方法。

虽然jupyter对PDF支持的不是那么的友善,但是对于html是非常棒的,只不过html是一个html嘛(这不是废话)……不过我可以利用html转换到pdf上啊。

后来了解到python有一个包叫 pdfkit,专门用来转换pdf文件。那我现在只需要在mac上得到pdfkit的支持就好啦?所以接下来就是尝试的过程了。

安装pdfkit,pip install pdfkit

在这里下载对应系统的安装包http://wkhtmltopdf.org/ ,这个只有48MB。

最后就是为什么说python是「多膜优秀」的原因了!直接看代码

python把ipynb文件转换成pdf文件过程详解

操作起来也很简单:

python把ipynb文件转换成pdf文件过程详解

至此,ipynb文件已成功转换成pdf文件,并且颜色、格式全都保留!

Python 相关文章推荐
浅谈python中的变量默认是什么类型
Sep 11 Python
PyCharm在win10的64位系统安装实例
Nov 26 Python
Pytorch入门之mnist分类实例
Apr 14 Python
用Python实现读写锁的示例代码
Nov 05 Python
pycharm 解除默认unittest模式的方法
Nov 30 Python
python实现计算器功能
Oct 31 Python
Python 生成一个从0到n个数字的列表4种方法小结
Nov 28 Python
关于Tensorflow分布式并行策略
Feb 03 Python
python logging 重复写日志问题解决办法详解
Aug 04 Python
numpy中生成随机数的几种常用函数(小结)
Aug 18 Python
python海龟绘图之画国旗实例代码
Nov 11 Python
python如何调用php文件中的函数详解
Dec 29 Python
深入了解Python枚举类型的相关知识
Jul 09 #Python
Python 的AES加密与解密实现
Jul 09 #Python
python+numpy按行求一个二维数组的最大值方法
Jul 09 #Python
使用Python轻松完成垃圾分类(基于图像识别)
Jul 09 #Python
Python分析彩票记录并预测中奖号码过程详解
Jul 09 #Python
python求最大值,不使用内置函数的实现方法
Jul 09 #Python
pandas的连接函数concat()函数的具体使用方法
Jul 09 #Python
You might like
那些年一起学习的PHP(一)
2012/03/21 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
2019/02/27 PHP
PHP+mysql防止SQL注入的方法小结
2019/04/27 PHP
php回调函数处理数组操作示例
2020/04/13 PHP
window.onload 加载完毕的问题及解决方案(下)
2009/07/09 Javascript
jQuery Tools tab使用介绍
2012/07/14 Javascript
checkbox勾选判断代码分析
2014/06/11 Javascript
基于insertBefore制作简单的循环插空效果
2015/09/21 Javascript
AngularJs  unit-testing(单元测试)详解
2016/09/02 Javascript
vue省市区三联动下拉选择组件的实现
2017/04/28 Javascript
详解jquery选择器的原理
2017/08/01 jQuery
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
Vue项目组件化工程开发实践方案
2018/01/09 Javascript
vue中本地静态图片路径写法
2018/03/06 Javascript
Python标准库之sqlite3使用实例
2014/11/25 Python
Python selenium 三种等待方式解读
2016/09/15 Python
python3实现163邮箱SMTP发送邮件
2018/05/22 Python
tensorflow实现简单逻辑回归
2018/09/07 Python
python读取各种文件数据方法解析
2018/12/29 Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
2019/03/05 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
python3实现飞机大战
2020/11/29 Python
英国时尚首饰品牌:Missoma
2020/06/29 全球购物
几道PHP面试题
2013/04/14 面试题
厂长助理岗位职责
2013/12/27 职场文书
数学教研活动总结
2014/07/02 职场文书
国庆促销活动总结
2014/08/29 职场文书
“九一八事变纪念日”国旗下讲话稿
2014/09/14 职场文书
健康状况证明模板
2014/10/23 职场文书
大学生自荐信范文
2015/03/05 职场文书
文艺演出主持词
2015/07/01 职场文书
Nest.js参数校验和自定义返回数据格式详解
2021/03/29 Javascript
python3 删除所有自定义变量的操作
2021/04/08 Python
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android