python3使用Image库由rgb值生成jpg图片
2017-03-17 00:00
686 查看
摘要: 使用python3的Image库,由rgb值生成jpg图片。
安装Image库(参考网络):
Image ubuntu14.40安装:
1.安装相应的库和包:
sudo apt-get build-dep python-imaging
2.ubuntu14.04中libfreetype 的头文件在目录/usr/include/freetype2下,但PIL中使用的路径是freetype,所以将原来的目录链接到新建的freetype:
cd /usr/include && sudo ln -s freetype2 freetype
3.安装Image
sudo pip3 install Image
生成图片代码:
安装Image库(参考网络):
Image ubuntu14.40安装:
1.安装相应的库和包:
sudo apt-get build-dep python-imaging
2.ubuntu14.04中libfreetype 的头文件在目录/usr/include/freetype2下,但PIL中使用的路径是freetype,所以将原来的目录链接到新建的freetype:
cd /usr/include && sudo ln -s freetype2 freetype
3.安装Image
sudo pip3 install Image
生成图片代码:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- r''' learning.py A Python 3 tutorial from http://www.liaoxuefeng.com Usage: python3 learning.py ''' from PIL import Image import re #生成图片大小 image_size = [480,120] #rgb数组,会按照image_size来生成色块,再拼成整图 rgb = { "001": [ ["d1c3ba","a88c81","745550","4f3935"], ["adb2b5","8496ae","436a95","2c314f"] ], "002": [ ["dcb39f","c4a094","6e4445","3f282e"] ], "003": [ ["edcfc5","f6beb1","daa3ad","c7bba1","9bada5","a89586","81594d"] ] } #将十六进制的字符串拆分为十进制的int值:r,g,b def change_rgb(hex_rge_str): if len(hex_rge_str)<6: return str_hex_list = re.findall(r'(.{2})',hex_rge_str) rgb_list = [] for str_hex in str_hex_list: rgb_list.append(int(str_hex, 16)) return tuple(rgb_list) #生成图片 def make_image_rgb(rgb_dict): if not rgb_dict: return for color in rgb_dict.keys(): image_rgb = rgb_dict[color] if not image_rgb or not image_rgb[0]: continue wide = image_size[0] // len(image_rgb[0]) hight = image_size[1] // len(image_rgb) im = Image.new('RGB', (wide*len(image_rgb[0]),hight*len(image_rgb)), 1) for row in range(len(image_rgb)): for column in range(len(image_rgb[row])): rgb_tuple = change_rgb(image_rgb[row][column]) im.paste(rgb_tuple,(wide*column,hight*row,wide*(column+1),hight*(row+1))) # for i in range(wide*column,wide*(column+1)): # for j in range(hight*row,hight*(row+1)): # im.putpixel((i,j),rgb_tuple) path = color.replace(' ','') im.save("/Users/yandengbang/Documents/image_%s.jpg" % path) #print(im.getpixel((200,0))) print('-------->>>begin.....') make_image_rgb(rgb) print('-------->>>......end')
相关文章推荐
- 使用python调用zxing库生成二维码图片
- python爬虫爬取指定用户微博图片及内容,并进行微博分类及使用习惯分析,生成可视化图表
- 使用python生成excel格式的图片
- 使用 Python 生成类数字字母混合验证码图片
- python使用PIL给图片添加文字生成海报示例
- 使用Java生成jpg与压缩图片为jpg文件的代码示例
- Pyhton每日练习 08 使用 Python 生成类似于下图中的字母+数字验证码图片
- 使用python查询某目录下所有‘jpg’结尾的图片文件
- 生成黑白画笔,android使用系统浏览器打开网页,将Bitmap图片存储在本地JPG文件的方法
- PHP使用JPG生成GIF动画图片,基于php_imagick_st-Q8.dll
- python tornado使用流生成图片
- 使用Python生成一张用于登陆验证的字符图片
- 使用JavaCV对视频截取图片,生成视频JPG封面图和GIF动态图
- python:使用requests,bs4爬取mmjpg上的图片
- 使用python调用zxing库生成二维码图片详解
- python使用PythonMagick将jpg图片转换成ico图片的方法
- 使用Python生成Excel格式的图片
- 使用Python生成验证码图片
- Python下使用qrcode模块生成vCard电子名片二维码图片
- 使用ATL库中的CImage类加载JPG图片作为对话框背景