≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > Python

解决Python之画的图Type 3 fonts字体不兼容的问题

人气:410 时间:2021-06-08

这篇文章主要为大家详细介绍了解决Python之画的图Type 3 fonts字体不兼容的问题,具有一定的参考价值,可以用来参考一下。

感兴趣的小伙伴,下面一起跟随四海网的雯雯来看看吧!

python matplotlib画图产生的Type 3 fonts字体不兼容

更改措施:

使用Type 42字体来生成PostScript 和PDF 文件。

代码如下:


import matplotlib
matplotlib.rcParams['pdf.fonttype'] = 42
matplotlib.rcParams['ps.fonttype'] = 42

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

 

补充:Type 3字体的解决办法

 

这个问题困扰了我一天了,成功解决,这种感觉太爽了。

提交MNRAS的pdf文件可能会因为含有type3字体而无法在线生成proof。

如遇此种情况,可先如下确认

代码如下:


pdffonts paper.pdf

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

看输出是否含有type3字体

如果是,则先考虑官方的建议,在文件头部加入:

代码如下:


\usepackage[T1]{fontenc}
\usepackage{aecompl}

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

重新编译

问题依旧的话,应该是插图中含有type3字体。比如用python画图,默认的似乎就是输出成type3. 修改

代码如下:


~/.matplotlib/matplotlibrc

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

加入(或者修改)如下两行

代码如下:


ps.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType)
pdf.fonttype : 42 # Output Type 3 (Type3) or Type 42 (TrueType)

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

重新画图

另一种解决方式是,将问题图片(如果是eps格式)用eps2eps转换一遍。但转换之后的图片中的字体被像素化了,放大时不清晰,不推荐。

还有一个方法效果好一些:先转成pdf再转回eps, 比如对fig.eps,

代码如下:


epstopdf fig.eps fig.pdf
pdftops -eps -r 400 fig.pdf fig.eps

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

 

补充: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

pdf论文中python画的图Type 3 fonts字体不兼容的解决方案

解决方法

缺少对应字体文件: NotoSansCJK-Regular.ttc

在网上找到对应的font文件

以我的Ubuntu 16为例, 字体文件在"/usr/share/fonts/truetype"中,

因此,把下载到的ttc文件放到 /usr/share/fonts/truetype 文件夹当中.

重新启动python环境,即可正常导入.

以上为个人经验,希望能给大家一个参考,也希望大家多多支持四海网。如有错误或未考虑完全的地方,望不吝赐教。

本文来自:http://www.q1010.com/181/19133-0.html

注:关于解决Python之画的图Type 3 fonts字体不兼容的问题的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:python

您可能感兴趣的文章

  • 解决Jupyter Notebook中文不能显示的问题的简单示例
  • Python之图片批量压缩的简单示例
  • python-opencv中的cv2.inRange函数用法的简单示例
  • Python之自动生成日历的简单示例
  • Python之绘制雷达图的简单示例
  • Python之和opencv的mask实现抠图叠加的简单示例
  • Python之解决Django transaction进行事务管理踩过的坑
  • 解决使用Spyder IDE时matplotlib绘图的显示问题
  • python-pandas创建Series数据类型的操作的简单示例
  • Python之tkinter制作m3u8视频下载工具的简单示例
上一篇:python基础分析之if循环语句的简单示例
下一篇:解决Jupyter Notebook中文不能显示的问题的简单示例
热门文章
  • Python 处理Cookie的菜鸟教程(一)Cookie库
  • python之pandas取dataframe特定行列的简单示例
  • Python解决json.dumps错误::‘utf8’ codec can‘t decode byte
  • Python通过pythony连接Hive执行Hql的脚本
  • Python 三种方法删除列表中重复元素的简单示例
  • python爬虫代码示例
  • Python 中英文标点转换示例
  • Python 不得不知的开源项目解析
  • Python urlencode编码和url拼接实现方法
  • python按中文拆分中英文混合字符串的简单示例
  • 最新文章
    • Python利用numpy三层神经网络的简单示例
    • pygame可视化幸运大转盘的简单示例
    • Python爬虫之爬取二手房信息的简单示例
    • Python之time库的简单示例
    • OpenCV灰度、高斯模糊、边缘检测的简单示例
    • Python安装Bs4及使用的简单示例
    • django自定义manage.py管理命令的简单示例
    • Python之matplotlib 向任意位置添加一个子图(axes)的简单示例
    • Python图像标签标注软件labelme分析的简单示例
    • python调用摄像头并拍照发邮箱的简单示例

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。