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中使用base64模块处理字符编码的教程
Apr 28 Python
详解python中的文件与目录操作
Jul 11 Python
Python中分支语句与循环语句实例详解
Sep 13 Python
django如何实现视图重定向
Jul 24 Python
解决Django layui {{}}冲突的问题
Aug 29 Python
Python TCP通信客户端服务端代码实例
Nov 21 Python
python 将dicom图片转换成jpg图片的实例
Jan 13 Python
python str字符串转uuid实例
Mar 03 Python
Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解
Mar 30 Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 Python
用Python实现定时备份Mongodb数据并上传到FTP服务器
Jan 27 Python
python中spy++的使用超详细教程
Jan 29 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
php生成缩略图的类代码
2008/10/02 PHP
php 文件上传代码(限制jpg文件)
2010/01/05 PHP
php判断终端是手机还是电脑访问网站的思路及代码
2013/04/24 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
asp.net+js 实现无刷新上传解析csv文件的代码
2010/05/17 Javascript
在javaScript中关于submit和button的区别介绍
2013/10/20 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
浅析Node.js 中 Stream API 的使用
2015/10/23 Javascript
实现非常简单的js双向数据绑定
2015/11/06 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
2016/04/01 Javascript
JS代码随机生成姓名、手机号、身份证号、银行卡号
2016/04/27 Javascript
浅谈js中的引用和复制(传值和传址)
2016/09/18 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
JQuery常用简单动画操作方法回顾与总结
2019/12/07 jQuery
详解javascript中var与ES6规范中let、const区别与用法
2020/01/11 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
[03:36]2015国际邀请赛第二日现场精彩集锦
2015/08/06 DOTA
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
2015/05/06 Python
Python中函数的参数传递与可变长参数介绍
2015/06/30 Python
一步步教你用Python实现2048小游戏
2017/01/19 Python
Python函数式编程
2017/07/20 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
python实现七段数码管和倒计时效果
2019/11/23 Python
pytorch实现mnist数据集的图像可视化及保存
2020/01/14 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
细说CSS3中的选择符
2008/10/17 HTML / CSS
英国高街电视:High Street TV
2018/05/22 全球购物
Notino芬兰:购买香水和化妆品
2019/04/15 全球购物
大学生求职信范文应怎么写
2014/01/01 职场文书
工作表现自我评价
2014/02/08 职场文书
2014年乡镇工会工作总结
2014/12/02 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
2015年卫生局工作总结
2015/07/24 职场文书
JavaScript 去重和重复次数统计
2021/03/31 Javascript