import Image
from get_png import getpng def transparent(infile):
#open png,covert it into 'RGBA mode',resize it,get data then make a datalist
datalist=list(Image.open(infile,'r').convert('RGBA').resize((1000,1000),Image.BILINEAR).getdata())
#color(0,0,0,0) is transparent
newim=Image.new("RGBA",(1000,1000),(0,0,0,0))
for x in range(1000):
for y in range(1000):
#color(255,255,255,255) is 'white'
if datalist[1000*y+x]==(255,255,255,255):
newim.putpixel((x,y),(255,255,255,255))
else:
pass
newim.save("1000_1000.png")
return "1000_1000.png"

以上生成了透明文件

import Image
import ImageDraw
import ImageFont #增加水印.直接写入文件.
def watermask(qq_screencapture_file):
print(qq_screencapture_file)
#写入两行文件.
sign_text1 = u'版权声明:本文为博主原创,未经允许不得转载。'
sign_text2 = u'博主地址:http://www.www.www'
#字体必须大于等于19才可以输出汉字,过小可能该库渲染不起来,具体原因不清楚。
font = ImageFont.truetype('simhei.ttf',19)
img = Image.open(qq_screencapture_file)
#获得图片长和宽,将文字写到最底下.
width,height = img.size
#img = Image.new("RGBA",(300,200),(0,0,0))
draw = ImageDraw.Draw(img)
#draw.text( (0,50), u'你好,世界!', font=font)
# draw.text( (0,50), unicode(txt,'UTF-8'))
draw.text((20,height-50),sign_text1,fill='#ff0000', font=font)
draw.text((20,height-30),sign_text2,fill='#ff0000', font=font)
del draw
#正好qq图片是png的.
img.save(qq_screencapture_file, "PNG")
print("finish.")

以上写入了文字

python生成透时图片and 写文字的更多相关文章

  1. 使用Qpaint在图片上写文字

    开发过程中需要实现在图片上叠加文字,可以采用Qpaint在图片上写文字,然后将图片显示在上面.再将Qlabel加到Qwidget中.效果如下 //创建对象,加载图片 QPixmap pix; pix. ...

  2. 函数putText()在图片上写文字

    #include <iostream> #include <opencv2/opencv.hpp> using namespace std; using namespace c ...

  3. thinkphp 利用GD库在图片上写文字

    <?php /** * Created by PhpStorm. * User: Administrator */ namespace Home\Event; use \Think\Image; ...

  4. php图片上面写文字,输出图片

    <?php /* param $image 图象资源 param size 字体大小 param angle 字体输出角度 param showX 输出位置x坐标 param showY 输出位 ...

  5. Swift - 给图片添加文字水印(图片上写文字,并可设置位置和样式)

    想要给图片添加文字水印或者注释,我们需要实现在UIImage上写字的功能. 1,效果图如下: (在图片左上角和右下角都添加了文字.) 2,为方便使用,我们通过扩展UIImage类来实现添加水印功能 ( ...

  6. Python生成流水线《无限拍卖》文字!

    话说,原文也是这样流水线生产的吧··· 代码 import random one_char_word=["烈","焰","冰"," ...

  7. C#图片上写文字

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Dr ...

  8. 使用freemarker生成word、html时图片显示问题

    使用freemarker生成word.html时图片显示问题 博客分类: Java 使用freemarker生成word时图片显示问题使用freemarker生成html时图片显示问题使用iText生 ...

  9. 利用python进行简单的图片处理

    python的 PIL模块是专门用来处理图片的模块,其功能可以说是非常强大了. 演示环境:win7 操作系统 安装python2.7以及指定的对应PIL模块 我这里有一个现成的PIL模块.本文的大部分 ...

随机推荐

  1. Mysql查询英文如何严格区分大小写?

    1. 前提:在Mysql数据库中进行查询时,希望英文严格区分大小写.默认情况下是不区分大小写的.2. 演示如下:在数据库表emp中,job字段中存储的值有'Engineer',现在的情况是,下面的两句 ...

  2. 第五届山东ACM大赛汇总

    A.angry_birds_again_and_again 简单积分: http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem& ...

  3. [翻译练习]密码学1小时入门 (Everything you need to know about cryptography in 1 hour)

    原文:http://www.daemonology.net/papers/crypto1hr.pdf   [密码学简介]   很多人都误用了密码学   一般可归为三类: 1. 愚蠢 比如Google ...

  4. Linux 脚本命令结果输出到文件

    From: http://bbs.chinaunix.net/thread-1997207-1-1.html sh test.sh | tee log.txt

  5. WM_GETMINMAXINFO消息 中结构体MINMAXINFO

    MINMAXINFO* lpMMI lpMMI->ptMaxSize.x = 800;  // 设置窗口最大化时的宽度 lpMMI->ptMaxSize.y = 600;  // 设置窗口 ...

  6. loadrunner录制脚本如何选择使用get请求和post请求的方式

    在loadrunner工具里录制脚本时常常会用到get请求和post请求,有关loadrunner常用的这两类的请求主要有: get请求: web_url 和 web_link post请求: web ...

  7. C#中如何定义全局变量及在各窗体中使用全局变量

    using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; us ...

  8. Openstack Basic

    html,body { } .CodeMirror { height: auto } .CodeMirror-scroll { } .CodeMirror-lines { padding: 4px 0 ...

  9. android 非activity如何得到布局文件 (java文件中获取布局文件)

    Android中得到布局文件对象有两种方式第一种,在Activity所在类中this.getLayoutInflater().inflater(R.layout.布局文件名,null);第二种,在非A ...

  10. 4T_进程与进程间通信

    ∮进程 进程与程序 进程与程序是有区别的.刚吃完炸鸡腿,拿出一张餐巾纸,擦完嘴之后,在油乎乎的纸上写下以下文字 #include <stdio.h> void main() { print ...