pdf論文中python畫的圖Type 3 fonts字體不兼容的解決方案
python matplotlib畫圖產(chǎn)生的Type 3 fonts字體不兼容
更改措施:
使用Type 42字體來(lái)生成PostScript 和PDF 文件。
import matplotlib matplotlib.rcParams['pdf.fonttype'] = 42 matplotlib.rcParams['ps.fonttype'] = 42
補(bǔ)充:Type 3字體的解決辦法
這個(gè)問題困擾了我一天了,成功解決,這種感覺太爽了。
提交MNRAS的pdf文件可能會(huì)因?yàn)楹衪ype3字體而無(wú)法在線生成proof。
如遇此種情況,可先如下確認(rèn)
pdffonts paper.pdf
看輸出是否含有type3字體
如果是,則先考慮官方的建議,在文件頭部加入:
\usepackage[T1]{fontenc} \usepackage{aecompl}
重新編譯
問題依舊的話,應(yīng)該是插圖中含有type3字體。比如用python畫圖,默認(rèn)的似乎就是輸出成type3. 修改
~/.matplotlib/matplotlibrc
加入(或者修改)如下兩行
ps.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType) pdf.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType)
重新畫圖
另一種解決方式是,將問題圖片(如果是eps格式)用eps2eps轉(zhuǎn)換一遍。但轉(zhuǎn)換之后的圖片中的字體被像素化了,放大時(shí)不清晰,不推薦。
還有一個(gè)方法效果好一些:先轉(zhuǎn)成pdf再轉(zhuǎn)回eps, 比如對(duì)fig.eps,
epstopdf fig.eps fig.pdf pdftops -eps -r 400 fig.pdf fig.eps
補(bǔ)充:python3 PIL使用font字體錯(cuò)誤:OSError: cannot open resource問題解決
錯(cuò)誤日志
>>> from PIL import ImageFont >>> ImageFont.truetype <function truetype at 0x0000021178B82B70> >>> ImageFont.truetype("NotoSansCJK-Regular.ttc", 30) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "D:\Users\52489\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 261, in truetype return FreeTypeFont(font, size, index, encoding, layout_engine) File "D:\Users\52489\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 144, in __init__ self.font = core.getfont(font, size, index, encoding, layout_engine=layout_engine) OSError: cannot open resource
解決方法
缺少對(duì)應(yīng)字體文件: NotoSansCJK-Regular.ttc
在網(wǎng)上找到對(duì)應(yīng)的font文件
以我的Ubuntu 16為例, 字體文件在"/usr/share/fonts/truetype"中,
因此,把下載到的ttc文件放到 /usr/share/fonts/truetype 文件夾當(dāng)中.
重新啟動(dòng)python環(huán)境,即可正常導(dǎo)入.
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
基于python tkinter的點(diǎn)名小程序功能的實(shí)例代碼
這篇文章主要介紹了基于python tkinter的點(diǎn)名小程序,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08Python中關(guān)鍵字nonlocal和global的聲明與解析
這篇文章主要給大家介紹了關(guān)于Python中關(guān)鍵字nonlocal和global的聲明與解析的相關(guān)資料,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-03-03python飛機(jī)大戰(zhàn) pygame游戲創(chuàng)建快速入門詳解
這篇文章主要介紹了python飛機(jī)大戰(zhàn) pygame游戲創(chuàng)建,結(jié)合實(shí)例形式詳細(xì)分析了Python使用pygame創(chuàng)建飛機(jī)大戰(zhàn)游戲的具體步驟與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-12-12使用pyqt 實(shí)現(xiàn)重復(fù)打開多個(gè)相同界面
今天小編就為大家分享一篇使用pyqt 實(shí)現(xiàn)重復(fù)打開多個(gè)相同界面,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2019-12-12Python實(shí)現(xiàn)求解斐波那契第n項(xiàng)的解法(包括矩陣乘法+快速冪)
這篇文章主要介紹怎么使用Python求解斐波那契第n項(xiàng),方法多樣,邏輯清晰,代碼簡(jiǎn)單詳細(xì),有這方面需要的朋友可以參考下2021-04-04