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的Tkinter实现一个简易计算器
Dec 31 Python
Python 正则表达式的高级用法
Dec 04 Python
Python机器学习库scikit-learn安装与基本使用教程
Jun 25 Python
Python Dataframe 指定多列去重、求差集的方法
Jul 10 Python
Python2和Python3中urllib库中urlencode的使用注意事项
Nov 26 Python
python 接收处理外带的参数方法
Dec 03 Python
opencv-python 读取图像并转换颜色空间实例
Dec 09 Python
Matplotlib使用字符串代替变量绘制散点图的方法
Feb 17 Python
在脚本中单独使用django的ORM模型详解
Apr 01 Python
pip安装tensorflow的坑的解决
Apr 19 Python
python 模拟登陆163邮箱
Dec 15 Python
Python OpenCV实现图形检测示例详解
Apr 08 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
深入了解php4(1)--回到未来
2006/10/09 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
2014/05/23 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
PHP微信开发之微信录音临时转永久存储
2018/01/26 PHP
PHP基于pdo的数据库操作类【可支持mysql、sqlserver及oracle】
2018/05/21 PHP
PHP将整数数字转换为罗马数字实例分享
2019/03/17 PHP
thinkphp5框架实现的自定义扩展类操作示例
2019/05/16 PHP
javascript 鼠标滚轮事件
2009/04/09 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
用JQuery调用Session的实现代码
2010/10/29 Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
2014/11/20 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
javascript创建对象的几种模式介绍
2016/05/06 Javascript
基于jQuery实现仿百度首页选项卡切换效果
2016/05/29 Javascript
基于node.js制作简单爬虫教程
2017/06/29 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
js中的闭包实例展示
2018/11/01 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
微信小程序仿今日头条导航栏滚动解析
2019/08/20 Javascript
vue实现移动端省市区选择
2019/09/27 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
Python3基础之基本数据类型概述
2014/08/13 Python
六个窍门助你提高Python运行效率
2015/06/09 Python
利用pandas读取中文数据集的方法
2018/07/25 Python
解决Django中多条件查询的问题
2019/07/18 Python
Python Web静态服务器非堵塞模式实现方法示例
2019/11/21 Python
分享一个H5原生form表单的checkbox特效代码
2018/02/26 HTML / CSS
党员大会主持词
2014/04/02 职场文书
小学二年级评语
2014/04/21 职场文书
2014业务员年终工作总结
2014/12/09 职场文书
金砖之国观后感
2015/06/11 职场文书
生日寿星公答谢词
2015/09/29 职场文书
Springboot配置suffix指定mvc视图的后缀方法
2021/07/03 Java/Android
Python Numpy库的超详细教程
2022/04/06 Python
SQL Server中的逻辑函数介绍
2022/05/25 SQL Server
Zabbix对Kafka topic积压数据监控的问题(bug优化)
2022/07/07 Servers