让人烦躁的 Font Type 3
这是一篇流水账,本来不想写,但我还是写了。因为在事务缠身“十万火急”的催命符影响下,我还是顺利地解决了“Bad font: Type3 font”的问题。事情是这样的。今年投了一个还不错的会议文章,收到文章录用通知以后,我就投入了其它紧急项目中,完全没有时间来修改审稿人的意见。终于在Camera-ready版本截稿的三天前,我开始准备论文,幸运的是要改的地方不多,迅速地改完XD。然而,当我上传一稿
这是一篇流水账,本来不想写,但我还是写了。因为在事务缠身“十万火急”的催命符影响下,我还是顺利地解决了“Bad font: Type3 font”的问题。
如果你只想解决问题,不想浪费时间听我讲故事,请直接看到这里就可以了:
在python画图脚本最前面,加入以下三行代码,重新运行生成图片即可。
import matplotlib
matplotlib.rcParams[‘pdf.fonttype’] = 42
matplotlib.rcParams[‘ps.fonttype’] = 42
如果你比较无聊,或者上述方法不生效,可以继续看下去:
事情是这样的。今年投了一个还不错的会议文章,收到文章录用通知以后,我就投入了其它紧急项目中,完全没有时间来修改审稿人的意见。终于在Camera-ready版本截稿的三天前,我开始准备论文,幸运的是要改的地方不多,迅速地改完XD。然而,当我上传一稿到HotCRP系统时,提示“Bad font: Type3 font”。
我立马意识到,坏了!因为这是python画图的时候用的默认字体Font Type 3, 而不是Font Type 42。显然,论文中10几张图都要重画!
此时的我,还在东莞出差中,然而数据备份在深圳的电脑上,当我尝试远程访问时,发现网络连接错误!此时,离截稿时间还有两天。
我连夜回到了深圳。
当我回到深圳园区上班时,收到同事发来会议邀请,一定要我去给开发人员做一个技术培训。于是,还没来得及打开备份文件夹的时候,就被拉到了会议中,一天就这样过去了。
当我从交付项目中脱身出来,时间已经是下午5点。没办法,只能推掉晚上部门的聚餐(可惜了我特意要求点的红烧甲鱼……)
说回“Bad font: Type3 font”的问题。在网上搜索了一下,找到以下解决方法:
I finally stumbled across an example matplotlibrc, and after some searching found two key settings: pdf.fonttype and ps.fonttype. You have to change these settings from the default of 3 to the alternative 42. You can do this in your matplotlibrc file with:
pdf.fonttype : 42
ps.fonttype : 42
Or, you can change these settings in your code using:
import matplotlib
matplotlib.rcParams['pdf.fonttype'] = 42
matplotlib.rcParams['ps.fonttype'] = 42
This causes matplotlib to use Type 42 (a.k.a. TrueType) fonts for PostScript and PDF files. This allows you to avoid Type 3 fonts without limiting yourself to the stone-age technology of Type 1 fonts.
我采用的是直接修改matplotlibrc文件,修改完后发现部分eps图片直接显示为空白。其中,直接用裸python2.7画的图是正常的,但是用Jupter Python3.6画的图是空白的。
要自闭了。
还好我是老司机,尝试Jupter Python3.6画图时先生成PDF,然后再导出eps, 然后在latex (论文编辑工具) 把eps加载转换成pdf。编译,上传,提示成功!
此时已经是凌晨12点,上传成功的一刻,办公室的灯正好关闭,偌大的房间,空无一人,乌漆ma黑。然而我内心是平静的,有一种考试结束,铃声响起时的释然。
转载请注明原文地址:https://blog.csdn.net/sbmye/article/details/110876519
更多网络相关知识请访问李彤的博客:https://blog.csdn.net/sbmye
更多推荐
所有评论(0)