位置: 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 入门)

  • 企业银行贷款报表要求
  • 长期待摊费用如何摊销计算
  • 民办非企业可以上市吗
  • 折旧会影响利润表吗
  • 增值税税差怎么算
  • 个税超过部分征税还是全部
  • 销售收入的暂估入账是否结转利润
  • 申请发票增额有没有什么条件
  • 小规模纳税人销售额
  • 劳务公司发放农民工工资的三种形式
  • 仓库常用包材
  • 委托加工模具的费用计入什么科目?
  • 个人所得税生育险
  • 移动板房的税法是多少
  • 租房发票的税由谁承担
  • 小规模纳税人差额征税
  • 什么是清算资金
  • 代数分配法适用于什么
  • 购买东西收据
  • 确认递延收益纳税调整吗
  • 个体工商户开9%的税需要什么
  • 当月作废的发票是否需要报税
  • 电脑如何进入bios设置
  • php 钩子
  • env文件夹是什么文件
  • win11电脑硬盘分区
  • php调用方法
  • 出租固定资产取得的收入属于收入要素吗
  • 建筑业异地施工可以先开发票么
  • 单位延缓缴纳社保员工可以要求赔偿吗
  • 黑马程序员前端工程师简历
  • 房地产企业开始退地的影响
  • 预提费用的账务处理
  • php实现留言板功能
  • 利用php实现一个数组
  • 递归 php
  • 目标追踪模型
  • vue3中如何使用vuex
  • at命令每天任务
  • 收到税务局信息
  • 季度是指
  • 预收账款的账务处理摘要
  • 公司出售房子怎么交税
  • python自学资料
  • python 多线程处理
  • sql2014附加数据库失败
  • 金税盘离线开票时间超限怎么办
  • 奖金属于职工福利吗
  • 扣伙食费会计分录
  • 注册资本印花税2023年新规定
  • 小规模纳税人认定标准500万
  • sql怎么搜索表
  • 个人无需办理汇票业务
  • 内退文件2018
  • 公司章程进行变更的条件
  • 税控盘费和服务费一样吗
  • 固定资产报废属于非流动资产处置损失吗
  • 收到税务局汇算清缴退所得税怎么做账
  • 经济往来怎么写
  • sql语句基础题及答案
  • sql的查询分析器
  • Winserver2012下mysql 5.7解压版(zip)配置安装教程详解
  • fedora怎么用
  • windows10 rs2
  • linux常用命令 删除
  • 微软发布新系统
  • windows7开机
  • centos fio
  • centos 7 dns
  • 如何永久激活win11
  • win7无法登录桌面
  • win8注册表损坏进不了系统
  • shell 多个文件合并
  • css里注释
  • 安卓9api
  • js代码测试工具
  • 江苏省官网
  • 地方税务局是事业单位吗
  • 交完了契税后可以办房产证吗
  • 西藏自治区税务局电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设