python编写微信公众号首图思路详解


Posted in Python onDecember 13, 2019

前言

之前一直在美图秀秀调整自己的微信公众号首图,效果也不尽如人意,老是调来调去,最后发出来的图片被裁剪了一大部分,丢失部分关键信息,十分恼火,于是想着用python写一个程序,把微信公众号首图的模式固定下来,方便以后写公众号。

思路

根据微信公众号首图要求,可以上传一个不超过5M的图片,且图片尺寸要是2.35:1的尺寸,换算成像素是900:383,有了这些参数就可以做文章了,这里有两种思路

把今天推文的标题(文字)用图片展示出来,使得文字排列错落有致,简单粗暴,而又不失美感,这里可以利用matplotlib模块,新建一个画布,然后在画布合适的位置把标题排列出来,最后保存到本地,这种办法适合于没有合适的图,但又想用首图把今天的内容标识出来。
利用PIL模块,新建一个空白模板,然后向模板黏贴合适尺寸的图片,这种办法适合已经有图了,只是图的尺寸不符合微信公众号首图的要求,用程序来调整尺寸。

思路1的代码

# -*- coding: utf-8 -*-
"""
Created on Sat Nov 2 16:33:16 2019
project name: 微信公众号首图
@author: 帅帅de三叔
"""
import matplotlib.pyplot as plt #导入绘图模块
plt.rcParams['font.sans-serif']=['SimHei'] #中文显示
plt.rcParams['axes.unicode_minus']=True #显示负号
import mpl_toolkits.axisartist as axisartist #导入坐标轴加工模块
fig=plt.figure(figsize=(2.35,1)) #建立画布
ax=axisartist.Subplot(fig,111) #使用axisartist.Subplot方法创建一个绘图区对象ax
fig.add_axes(ax) #将绘图区对象添加到画布中
ax.axis[:].set_visible(False) #隐藏原来的实线矩形
plt.text(0.35,0.8,"负数", fontsize=17,style='italic',color='mediumvioletred') #设置字体大小颜色和款式
plt.text(0.45,0.48,"的", fontsize=12,style='italic',color='mediumvioletred')
plt.text(0.25,0.1,"运算法则", fontsize=17,style='italic',color='mediumvioletred')
plt.show() #显示预览
plt.savefig("公众号首图.png",dpi=800) #保存图片

思路1的代码解读

首先建立一个2.35:1空白画布,然后用坐标轴加工工具axisartist把画布四周的框去掉,然后将推文标题拆分,比如我今天要推送的文章是《负数的运算法则》,那么我会拆成“负数”,“的”和“运算法则”三部分,然后设计好他们展示的位置,用plt.text()函数打上去便是,并且调整里面的字体大小,款式和颜色等参数使得效果看起来不那么单调, 最重要的是位置可以通过plt.text(x,y,)中的x,y来调节,最后plt.savefig()保存到本地即可。

效果预览

python编写微信公众号首图思路详解

总结

以上所述是小编给大家介绍的python编写微信公众号首图思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python多线程和队列操作实例
Jun 21 Python
深入浅析python中的多进程、多线程、协程
Jun 22 Python
mysql 之通过配置文件链接数据库
Aug 12 Python
python虚拟环境的安装配置图文教程
Oct 20 Python
Python3实现的爬虫爬取数据并存入mysql数据库操作示例
Jun 06 Python
python numpy存取文件的方式
Apr 01 Python
python实现将json多行数据传入到mysql中使用
Dec 31 Python
利用python生成照片墙的示例代码
Apr 09 Python
pandas apply多线程实现代码
Aug 17 Python
Python如何在bool函数中取值
Sep 21 Python
5行Python代码实现一键批量扣图
Jun 29 Python
分享3个非常实用的 Python 模块
Mar 03 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
Dec 13 #Python
python中设置超时跳过,超时退出的方式
Dec 13 #Python
python opencv实现gif图片分解的示例代码
Dec 13 #Python
python多进程并发demo实例解析
Dec 13 #Python
使用Matplotlib 绘制精美的数学图形例子
Dec 13 #Python
python plotly画柱状图代码实例
Dec 13 #Python
Pytorch实现的手写数字mnist识别功能完整示例
Dec 13 #Python
You might like
PHILIPS AE3805收音机的分析打磨
2021/03/02 无线电
php查看session内容的函数
2008/08/27 PHP
PHP中for与foreach的区别分析
2011/03/09 PHP
PHP查询MySQL大量数据的时候内存占用分析
2011/07/22 PHP
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
2011/11/07 PHP
ECSHOP在PHP5.5及高版本上报错的解决方法
2015/08/31 PHP
JS 页面自动加载函数(兼容多浏览器)
2009/05/18 Javascript
模仿百度三维地图的js数据分享
2011/05/12 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
ff下JQuery无法监听input的keyup事件的解决方法
2013/12/12 Javascript
纯JS实现动态时间显示代码
2014/02/08 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
jQuery实现二级下拉菜单效果
2016/01/05 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
Sublime Text新建.vue模板并高亮(图文教程)
2017/10/26 Javascript
Vue.js 2.x之组件的定义和注册图文详解
2018/06/19 Javascript
vue+echarts实现动态绘制图表及异步加载数据的方法
2018/10/17 Javascript
基于Vue+ElementUI的省市区地址选择通用组件
2019/11/20 Javascript
Python实现的批量下载RFC文档
2015/03/10 Python
python PIL模块与随机生成中文验证码
2016/02/27 Python
python安装numpy&安装matplotlib& scipy的教程
2017/11/02 Python
pandas系列之DataFrame 行列数据筛选实例
2018/04/12 Python
Python爬虫实现简单的爬取有道翻译功能示例
2018/07/13 Python
Python中sys模块功能与用法实例详解
2020/02/26 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
教师产假请假条
2014/04/10 职场文书
学生自我鉴定格式及范文
2014/09/16 职场文书
2014年财务部工作总结
2014/11/11 职场文书
通用员工手册范本
2015/05/14 职场文书
留学文书中的个人陈述,应该注意哪些问题?
2019/08/23 职场文书
Html5大屏数据可视化开发的实现
2021/06/11 HTML / CSS
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python