本文实例为大家分享了python生成圆形图片的具体代码,供大家参考,具体内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# -*- coding: utf-8 -*-
"""
__author__= 'Du'
__creation_time__= '2018/1/5 9:08'
"""
import os, math
from PIL import Image
def circle():
ima = Image. open ( "ball1.jpg" ).convert( "RGBA" )
# ima = ima.resize((600, 600), Image.ANTIALIAS)
size = ima.size
print (size)
# 因为是要圆形,所以需要正方形的图片
r2 = min (size[ 0 ], size[ 1 ])
if size[ 0 ] ! = size[ 1 ]:
ima = ima.resize((r2, r2), Image.ANTIALIAS)
# 最后生成圆的半径
r3 = 60
imb = Image.new( 'RGBA' , (r3 * 2 , r3 * 2 ),( 255 , 255 , 255 , 0 ))
pima = ima.load() # 像素的访问对象
pimb = imb.load()
r = float (r2 / 2 ) #圆心横坐标
for i in range (r2):
for j in range (r2):
lx = abs (i - r) #到圆心距离的横坐标
ly = abs (j - r) #到圆心距离的纵坐标
l = ( pow (lx, 2 ) + pow (ly, 2 )) * * 0.5 # 三角函数 半径
if l < r3:
pimb[i - (r - r3),j - (r - r3)] = pima[i,j]
imb.save( "test_circle.png" )
circle()
|
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/qq_34218221/article/details/78980575