python九宫格图片的原理

原理
1、用Python制作的九宫格图像生成器包装exe文件,用户无需部署安装Python的开发环境,即可在当地运行该程序,快速生成九宫格图像。
2、用PIL库不断画小区域,切下来存储成新的小图片。
实例
假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。
t(width / 3) #因为朋友圈一行放3张图。box_list = []# (left, upper, right, lower)for i in range(0,3):for j in range(0,3):#print((i*item_width,j*item_width,(i+1)*item_width,(j+1)*item_width))box = (j*item_width,i*item_width,(j+1)*item_width,(i+1)*item_width)box_list.append(box)image_list = [image.crop(box) for box in box_list]return image_list#保存图片def save_images(image_list):index = 1for image in image_list:image.save(str(index) + '.png', 'PNG')index += 1# 点击按钮,实现图片分割def cTofClicked():file_path=str(entryCd.get()) # 获取要进行分割的图片路径image = Image.open(file_path)#image.show()image = fill_image(image)image_list = cut_image(image)save_images(image_list)labelcTof.config(text="九宫格图片已生,请在程序所在目录查看!")# 窗体top=tk.Tk()top.title('九宫格图片生成器')labelcTof=tk.Label(top,text="请输入要进行转换的图片路径:",height=4,\width=40,fg="blue")labelcTof.pack()entryCd=tk.Entry(top,text='0') # 文本框,获取图片路径entryCd.pack()label_tip=tk.Label(top,text="请检查图片路径是否输入正确!",height=2,\width=40,fg="gray")label_tip.pack()btnCal=tk.Button(top,text="点击生成九宫格图片",fg="red",bg="yellow",command=cTofClicked) # 点击回调函数btnCal.pack()top.mainloop() # 执行主循环
以上就是python九宫格图片的原理,希望对大家有所帮助。
*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权

评论
