位置: IT常识 - 正文

python九宫格图片的原理(python简单九宫格拼图游戏)

编辑:rootadmin

推荐整理分享python九宫格图片的原理(python简单九宫格拼图游戏),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python重排九宫,python画成一个九宫格,python九宫格数字游戏,python 九宫格数独,python简单九宫格拼图游戏,python简单九宫格拼图游戏,python画成一个九宫格,python画成一个九宫格,内容如对您有帮助,希望把文章链接给更多的朋友!

python九宫格图片的原理(python简单九宫格拼图游戏)

原理

1、用Python制作的九宫格图像生成器包装exe文件,用户无需部署安装Python的开发环境,即可在当地运行该程序,快速生成九宫格图像。

2、用PIL库不断画小区域,切下来存储成新的小图片。

实例

假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。

#-*-coding:UTF-8-*-#将一张图片分成九张,九宫格importtkinterastkfromPILimportImageimportsys#先将inputimage填充为正方形deffill_image(image):width,height=image.size#选取长和宽中较大值作为新图片的new_image_length=widthifwidth>heightelseheight#生成新图片[白底]new_image=Image.new(image.mode,(new_image_length,new_image_length),color='white')#注意这个函数!#将之前的图粘贴在新图上,居中ifwidth>height:#原图宽大于高,则填充图片的竖直维度#(x,y)二元组表示粘贴上图相对下图的起始位置,是个坐标点。new_image.paste(image,(0,int((new_image_length-height)/2)))else:new_image.paste(image,(int((new_image_length-width)/2),0))returnnew_image#分割图片defcut_image(image):width,height=image.sizeitem_width=int(width/3)#因为朋友圈一行放3张图。box_list=[]#(left,upper,right,lower)foriinrange(0,3):forjinrange(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)forboxinbox_list]returnimage_list#保存图片defsave_images(image_list):index=1forimageinimage_list:image.save(str(index)+'.png','PNG')index+=1#点击按钮,实现图片分割defcTofClicked():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九宫格图片的原理,希望对大家有所帮助。更多Python学习指路:Python基础教程

本文链接地址:https://www.jiuchutong.com/zhishi/303275.html 转载请保留说明!

上一篇:Python数学建模三剑客之Matplotlib(数学建模python 怎么用)

下一篇:Css3入门详解(css 入门)

  • 车险发票不含车船税怎么记账
  • 水电气费用属于固定成本
  • 营业执照备案需要什么资料
  • 业务往来说明范本
  • 会计准则哪些科目变化最大
  • 直线法计提折旧的公式预计净残值
  • 收到物业费普通发票做账
  • 为了贷款支付的土地评估费用怎么会计处理?
  • 增值税税率调整时间17变16
  • 拆迁置换安置房
  • 代别的公司付款怎么做账
  • 已认证发票退回的会计分录
  • 工程部用的测试仪器
  • 股东贷款可以转给其他人吗
  • 销项负数发票怎么填报增值税报表
  • 旅游地产房产税
  • 以前年度损益调整怎么用
  • 新企业的设立流程
  • 借现金还银行怎么做账
  • 收到退回的投标保证金
  • 固定资产后续支出是指固定资产在使用过程中发生的
  • 其他应收款注销时处理
  • 联想g40开机屏幕一直闪
  • 生产部门设备折旧费
  • 应收账款的差额计入哪里
  • 房地产开发企业建造的商品房,在出售前
  • linux dism
  • win10任务栏显示年月日
  • 清除不必要的内存
  • 再给我推荐几款
  • 印花税计提缴纳时间
  • 固定资产核销程序
  • 采购周转材料会议记录
  • hp是什么软件
  • win7旗舰版系统怎么样
  • 售后租回怎么理解
  • web前端基本知识
  • 临时存款账户销户
  • zen+框架
  • 免费设备投放项目
  • 红字发票步骤
  • web漏洞扫描器的设计与实现
  • axure简单教程
  • modulenotfounderror
  • 前端es2020
  • java泛型简单例子
  • 对公账号里面的钱会扣税吗
  • 个人所得税转账扣除子女教育那个什么时候可以提交
  • java拼接字符串和数字
  • db2udb
  • 2021增值税发票怎么开步骤
  • 累计盈余下设明细科目吗
  • 第四季度报表和年报对不上
  • 接受捐赠收入作为广告费扣除基数吗
  • 个体的个人所得税怎么交税?
  • 入股投资的钱能取出来吗
  • 用友t6反记账步骤
  • 个人所得税利息股息红利所得适用比例税率
  • 税控盘反写是不是说明税都已经成功申报了
  • 发票逾期未抵扣怎么办
  • 企业出售产品
  • 跨年度费用如何计算
  • 冲销以前年度多计提的折旧
  • tabletpc输入面板怎么打开
  • ubuntu gz
  • Mac如何使用clash上外网
  • mac重装macos
  • ghost后恢复数据
  • win7开始菜单在哪里
  • 各种linux系统比较
  • win8 任务栏
  • windows补丁kb3033929
  • python3 栈
  • unity3d最新api
  • 两种方法解决问题三年级下册
  • jQuery模仿阿里云购买服务器选择购买时间长度的代码
  • android反编译smali
  • 补农行卡怎么补几天能补完
  • 中山市地方税务局官网
  • 政务公开事项目录编制
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设