pdf論文中python畫的圖Type 3 fonts字體不兼容的解決方案
python matplotlib畫圖產(chǎn)生的Type 3 fonts字體不兼容
更改措施:
使用Type 42字體來生成PostScript 和PDF 文件。
import matplotlib matplotlib.rcParams['pdf.fonttype'] = 42 matplotlib.rcParams['ps.fonttype'] = 42
補(bǔ)充:Type 3字體的解決辦法
這個問題困擾了我一天了,成功解決,這種感覺太爽了。
提交MNRAS的pdf文件可能會因為含有type3字體而無法在線生成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)換之后的圖片中的字體被像素化了,放大時不清晰,不推薦。
還有一個方法效果好一些:先轉(zhuǎn)成pdf再轉(zhuǎn)回eps, 比如對fig.eps,
epstopdf fig.eps fig.pdf pdftops -eps -r 400 fig.pdf fig.eps
補(bǔ)充:python3 PIL使用font字體錯誤:OSError: cannot open resource問題解決
錯誤日志
>>> 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
解決方法
缺少對應(yīng)字體文件: NotoSansCJK-Regular.ttc
在網(wǎng)上找到對應(yīng)的font文件
以我的Ubuntu 16為例, 字體文件在"/usr/share/fonts/truetype"中,
因此,把下載到的ttc文件放到 /usr/share/fonts/truetype 文件夾當(dāng)中.
重新啟動python環(huán)境,即可正常導(dǎo)入.
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
在Heroku云平臺上部署Python的Django框架的教程
這篇文章主要介紹了在Heroku云平臺上部署Python的Django框架的教程,Heroku云平臺使用了Git版本控制系統(tǒng),所以本教程主要提供了配置所需要的Git腳本,需要的朋友可以參考下2015-04-04
Python+OpenCV實現(xiàn)尋找到圓點標(biāo)定板的角點
這篇文章主要為大家詳細(xì)介紹了Python+OpenCV實現(xiàn)找到圓點標(biāo)定板所有點后通過距離找兩個角點,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-11-11
pytorch如何利用ResNet18進(jìn)行手寫數(shù)字識別
這篇文章主要介紹了pytorch如何利用ResNet18進(jìn)行手寫數(shù)字識別問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02

