其实就是实现一个效果,给一张图片,然后再右上角给出未读的信息数目,就像我们打开微信的时候,总是看到红点就忍不住想要点击去查看一样。

类似这种效果:

可以知道,图片是给定的,那么只要随机生成一个数字,然后再在图片的右上角显示出来就好了,这里可以使用PIL,这样就比较方便的实现了,

代码:

from PIL import Image,ImageDraw, ImageFont

import random

origin_image = "./image/test.jpg"
new_image = "./image/new_test.jpg"
color = (255,0,0) def numRandom():
return random.randint(0, 100) def draw_text_for_image(text, origin_image,fill_color):
try:
image = Image.open(origin_image)
size = image.size
x = size[0] - 60
font = ImageFont.truetype("arial.ttf", 36)
draw = ImageDraw.Draw(image)
draw.text((x, 15), text, font=font, fill=fill_color)
image.save(new_image,'jpeg');
except :
print "Unable to load image" if __name__ == "__main__":
text = str(numRandom())
draw_text_for_image(text,origin_image,color)

先得到需要的图片和保存的图片路径,利用随机数产生一个随机数字,ImageDraw实现在图片是添加文字。

image.size获得图片的长宽,返回一个元祖。

这里说说最后一个__name__ == "__main__":

  当打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':

模块是对象,并且所有的模块都有一个内置属性 __name__。一个模块的 __name__ 的值取决于您如何应用模块。如果 import 一个模块,那么模块__name__ 的值通常为模块文件名,不带路径或者文件扩展名。但是您也可以像一个标准的程序样直接运行模块,在这 种情况下,,__name__ 的值将是一个特别缺省"__main__"。

在cmd 中直接运行.py文件,则__name__的值是'__main__';

而在import 一个.py文件后,__name__的值就不是'__main__'了;

从而用if __name__ == '__main__'来判断是否是在直接运行该.py文件

如:

#Test.py

class Test:

def __init(self):pass

def f(self):print 'Hello, World!'

if __name__ == '__main__':

Test().f()

#End

你在cmd中输入:

C:>python Test.py

Hello, World!

说明:"__name__ == '__main__'"是成立的

你再在cmd中输入:

C:>python

>>>import Test

>>>Test.__name__                #Test模块的__name__

'Test'

>>>__name__                       #当前程序的__name__

'__main__'

无论怎样,Test.py中的"__name__ == '__main__'"都不会成立的!

所以,下一行代码永远不会运行到

python类似微信未读信息图片脚本的更多相关文章

  1. HTML/CSS: 如何制作未读信息图标

    最近公司项目中涉及到制作通讯界面中未读信息的带数字的红色圆点图标. 拿我目前的博客头像图片为例(其实就是谷歌图片中粗略挑了一张顺眼的图片),效果图如下: HTML代码如下: <img id=&q ...

  2. 仿微信未读RecyclerView平滑滚动定位效果

    效果图有红点的地方表示有未读消息,依次双击首页图标定位,然后定位到某个未读在手动下滑一点距离在次点击定位效果 用过 RecyclerView 的人都知道,自带有几个滚动到item下标的方法,但是不靠谱 ...

  3. android 实现类似qq未读消息点击循环显示

    public void jumpUnread(boolean cycle) { List<ContactLogModel> dataList = adapter.getContactLog ...

  4. 使用python编写微信跳一跳的自动脚本

    实现思路: 调用adb命令,截图 寻找小小人的底部中心点role(从下到上扫描,直到找到小小人相同像素的点,至于小小人像素点rgb是什么,可以使用photoshop查看) 寻找棋盘最高点top,然后寻 ...

  5. 利用python 实现微信公众号群发图片与文本消息功能

    在微信公众号开发中,使用api都要附加access_token内容.因此,首先需要获取access_token.如下: #获取微信access_token def get_token(): paylo ...

  6. python: 爬取[博海拾贝]图片脚本

    练手代码,聊作备忘: # encoding: utf-8 # from __future__ import unicode_literals import urllib import urllib2 ...

  7. python+imageMagick写的一个压缩图片脚本

    !/usr/bin/python import os import cPickle as p import re import Image def imageCompre(imagedir = '.' ...

  8. python之微信好友统计信息

    需要安装库:wxpy 代码如下: from wxpy import Bot,Tuling,embed,ensure_one bot = Bot(cache_path=True) #获取好友信息 bot ...

  9. 【Python学习笔记】-APP图标显示未读消息数目

    以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目.本文主要解说怎样用Python语言实现图标显示未读消息的数目.首先,还是要用到Python中PIL库, ...

随机推荐

  1. 从零开始学ios开发(十):Multiview Applications(多个xib之前的切换)

    这篇学习的主要内容是Multiview,在我们学习iphone旋转的时候,介绍过多个view的使用方法,不过这里的view和旋转屏幕中所指的多个view是不同的,旋转屏幕中涉及到的多个view是在一个 ...

  2. UIViewController没有随着设备一起旋转的原因

    对于iPhone app,UIViewController类提供了基本的视图管理模式.当设备改变方向的时候view controller的视图会自动随之旋转的.如果视图和子视图的autoresizin ...

  3. 论坛类应用双Tableview翻页效果实现

    作为一名篮球爱好者,经常使用虎扑体育,虎扑体育应用最核心的部分就是其论坛功能,无论哪个版块,论坛都是其核心,而其论坛部分的实现又别具一格,它以两个tableview的形式翻页滚动显示,而不是常见的那种 ...

  4. c语言编程之循环队列

    利用链表实现的循环队列,完成了队列的入队和出队,对于队空和队满用了一个flag进行标记.入队flag++,出队flag-- #include"stdio.h" typedef in ...

  5. 《C++Primer》复习——with C++11 [3]

    1.我们的程序经常使用很多IO库,用来输入输出例如:istream(输入流)类型,提供输入操作. ostream(输出流)类型, 提供输出操作. cin, 一个istream对象,从标准输入读取数据. ...

  6. C#异常类总结

    http://msdn.microsoft.com/zh-cn/library/aa664610(v=vs.71).aspx C#异常类相关总结 C#异常类一.基类Exception C#异常类二.常 ...

  7. ORA-00257: 归档程序错误。在释放之前仅限于内部连接

    今天发现oracle数据库连不上,报错:ORA-00257: 归档程序错误.在释放之前仅限于内部连接 马上联想到可能是空间满了,一看磁盘目录,果然. 解决方法如下: 1:查看归档日志目录. 登陆账号后 ...

  8. 2186: [Sdoi2008]沙拉公主的困惑 - BZOJ

    Description 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票.房地产第一大户沙拉公主决定预测一下大富翁国现 ...

  9. hadoop 数据采样

    http://www.cnblogs.com/xuxm2007/archive/2012/03/04/2379143.html 原文地址如上: 关于Hadoop中的采样器 .为什么要使用采样器 在这个 ...

  10. ios7去除手势滑动返回

    if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) { sel ...