【教学类-60-01】彩色消划掉01(四个数字,X*Y宫格)

背景需求:

🧠思维启蒙 - 小红书注意力训练小分享-彩色划消 训练孩子的视觉辨别能力、视觉稳定性、注意力分配额能力👀 一起来试试吧~ #分享学习方法 #注意力训练 #专注力训练#天津 #亲子时光 #孩子成长 #思维启蒙 #数学思维启蒙 #早教启蒙 #数学启蒙这样做 #科学思维 #科学思维训练icon-default.png?t=N7T8https://www.xiaohongshu.com/explore/65d453e3000000000b01b410?app_platform=android&ignoreEngage=true&app_version=8.38.0&share_from_user_hidden=true&type=normal&author_share=1&xhsshare=WeixinSession&shareRedId=ODszMTs4Nk82NzUyOTgwNjg3OTlHS0xC&apptime=1717155047&share_id=e7197e0c6d5c46249e430a97557a445c

将以上样式复刻

代码展示

'''
彩色消除-注意力分享
作者:AI对话大师,阿夏
时间:2024年5月31日
'''

from PIL import Image, ImageDraw, ImageFont
import random

path = r'C:\Users\jg2yXRZ\OneDrive\桌面\彩色划消'

for xx in range(10):
    wides = 800    # 画布底边长度
    heights = 900  # 画布高度长度

    w = 14
    # 数字的行的数量
    h = 12
    # 数字的列的数量

    path = r'C:\Users\jg2yXRZ\OneDrive\桌面\彩色划消'

    # 创建画布
    canvas = Image.new("RGB", (wides, heights), (255, 255, 255))
    draw = ImageDraw.Draw(canvas)

    # 字体和数字颜色
    font = ImageFont.truetype(r'C:\Windows\Fonts\simhei.ttf', 50)  # 使用宋体字体
    number_colors = {3: "red", 8: "blue", 9: "green", 6: "purple"}

    # 随机数字
    numbers = [3, 8, 9, 6]

    # 计算数字最大宽度和高度
    max_width = 0
    max_height = 0
    for number in numbers:
        width, height = draw.textsize(str(number), font=font)
        max_width = max(max_width, width)
        max_height = max(max_height, height)

    # 边距和间距
    margin = (wides - w * max_width) // (w + 1)
    spacing = margin

    margin2 = (wides - h * max_height) // (h + 1)
    spacing2 = margin2

    # 绘制下方的 w * h 宫格
    grid_margin_top = heights-margin2 - h*max_height - margin2*(h-1)
    grid_margin_left = margin

    for i in range(h):
        for j in range(w):
            # 计算文字位置
            x = grid_margin_left + j * (max_width + spacing)
            y = grid_margin_top + i * (max_height + spacing2)

            # 随机选择数字和颜色
            number = random.choice(numbers)
            color = number_colors[number]

            # 写入文字
            draw.text((x, y), str(number), fill=color, font=font)

    # 左上角数字
    # 字体和数字颜色
    font = ImageFont.truetype(r'C:\Windows\Fonts\simhei.ttf', 70)  # 使用宋体字体,字号70
    number_color = 'black'

    # 在指定位置写入数字
    number = random.choice(numbers)
    position = (10, 30)

    # 写入文字
    draw.text(position, str(number) + ' 共有___个,用时__分钟', fill=number_color, font=font)

    # 保存图片
    canvas.save(path + fr"\{xx}.png")

一、14*12宫格

二、12*12

三、17*15

虽然写了,但是感觉挺浪费彩墨水的,比较适合小班孩子圈数字,只能圈,无法统计总数(数量太多了)

特别说明:

画布高度必须大于宽度,否则数字会把题目遮住的

假如:

 wides = 1000    # 画布底边长度

    heights = 900  # 画

 wides = 900    # 画布底边长度

    heights = 900  # 画

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/666245.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

天工大模型:中国AI搜索巨头如何一骑绝尘?

5月,全球大模型领域的竞争,或可用“你方唱罢我方登场”来形容。 谷歌、腾讯、阿里、字节跳动等业界巨擘纷纷亮出大招。有的凭借技术底蕴实现全面升级,有的慷慨将大模型开源免费,更有甚者通过价格战掀起狂风巨浪,整个市…

4月啤酒品类线上销售数据分析

近期,中国啤酒行业正处于一个重要的转型期。首先,消费者对高品质啤酒的需求不断增加,这推动了行业向高端化、场景化和社交化的方向发展。精酿啤酒作为这一趋势的代表,其发展势头强劲,不仅满足了消费者对品质化、个性化…

解决get请求入参@NotNull验证不生效问题

get请求NotNull验证不生效 在这里插入图片描述 解决办法 在该方法的controller类上加Validated 解决get请求入参NotNull验证不生效问题

CCF-GESP 2024 四级T1相似字符串

题目描述 对于两个字符串A和B,如果A可以通过删除一个字符,或插入一个字符,或修改一个字符变成B,那么我们说A和B是相似的。 比如 apple 可以通过插入一个字符变成 applee ,可以通过删除一个字符变成 appe &#…

基于百度智能体平台快速搭建Java学习助手

文章目录 前言什么是文新智能体平台?Java学习助手智能体搭建智能体效果智能体入口文新智能体体验感受 前言 一个Java初学者在学习Java时可能不知道从哪下手,一个工作了3年的Java开发遇到瓶颈期不知如何提升自己,此时,如果有一个老…

多环境和前后多环境实战

文章目录 一.多环境1.1 什么是多环境1.2 多环境分类1.2.1 本地环境(自己的电脑)1.2.2 开发环境(远程开发)1.2.3 测试环境1.2.4 预发布环境1.2.5 正式环境1.2.6 沙箱环境(实验环境) 1.3 如何实现1.3.1 抽象配…

【算法】模拟算法——替换所有的问号(easy)

题解:替换所有的问好(模拟算法) 目录 1.题目2.题解3.参考代码4.总结 1.题目 题目链接:LINK 2.题解 纯模拟。从前往后遍历整个字符串,找到问号之后,就⽤ a ~ z 的每⼀个字符去尝试替换即可。 3.参考代码 class Solution { pu…

Whisper-AT:抗噪语音识别模型(Whisper)实现通用音频事件标记(Audio Tagger)

本文介绍一个统一音频标记(Audio Tagger)和语音识别(ASR)的模型:Whisper-AT,通过冻结Whisper的主干,并在其之上训练一个轻量级的音频标记模型。Whisper-AT在额外计算成本不到1%的情况下&#xf…

构建树结构的几种方式

表结构 CREATE TABLE sys_dept (dept_id bigint(20) NOT NULL AUTO_INCREMENT COMMENT ID,pid bigint(20) DEFAULT NULL COMMENT 上级部门,sub_count int(5) DEFAULT 0 COMMENT 子部门数目,name varchar(255) NOT NULL COMMENT 名称,dept_sort int(5) DEFAULT 999 COMMENT 排…

Sapphire开发日志(三)

任务描述 本周实现并封装了模型的运行,需要在前端安装依赖的库,编写对应的处理函数。同时需要能够展示出抠图效果。 依赖与环境配置 尝试在前端接入并运行onnx。 在前端运行onnx依赖于onnxruntime-web这个包,这个包可以在浏览器进行模型推…

day25-XML

1.xml 1.1概述【理解】 万维网联盟(W3C) 万维网联盟(W3C)创建于1994年,又称W3C理事会。1994年10月在麻省理工学院计算机科学实验室成立。 建立者: Tim Berners-Lee (蒂姆伯纳斯李)。 是Web技术领域最具权威和影响力的国际中立性技术标准机构。 到目前为…

前端从零到一开发vscode插件并发布到插件市场

前端从零到一开发vscode插件并发布到插件市场 背景目标成果展示一条龙实现过程安装插件脚手架和工具创建项目运行调试打包第一次打包前的必要操作 发布第一次发布前账号准备注册Azure DevOps发布账号-获取token注册vscode开发者账号终端登录vsce 发布方式2-手动上传插件 进阶开…

SQL Server 拆分逗号分隔的字段为多条数据

文章目录 引言I 拆分逗号分隔的字段为多条数据1.1 使用`CROSS APPLY `拆分逗号分隔的字段为多条数据1.2 利用CHARINDEX 实现把逗号隔开的字符串拆分成行II 多列转行,逗号分隔(字段拼接/字段分割)1.1 多列转行,逗号分隔2.2 int字段类型的多行数据合并(字段拼接)2.3 SQLserver查询…

揭秘数字货币:比特币背后的技术逻辑

随着科技的飞速发展,数字货币作为一种新兴的经济形态,已经逐渐走入我们的视野。其中,比特币无疑是这一领域的佼佼者。那么,比特币背后的技术逻辑究竟是什么呢?本文将为您揭开这一神秘面纱。 一、区块链技术:比特币的基石 比特币的核心技术就是区块链(Blockchain)。区块…

K210视觉识别模块学习笔记1:第一个串口程序_程序烧录与开机启动

今日开始学习K210视觉识别模块:简单的认识与串口程序 既然K210作为一个视觉识别外设模块来使用,我认为第一个程序 就没必要学点灯之类的了,直接学习串口如何配置开始为妥,毕竟后面都要用到..... 在研究过程中也发现K210程序的烧录与启动也与…

【进阶篇-Day1:JAVA中static关键字、继承、final关键字的介绍】

目录 1、static关键字1.1 static关键字的介绍1.2 static关键字修饰成员的特点(1)static成员变量:(2)static成员方法: 1.3 重新认识main方法1.4 static关键字修饰成员的内存图解释 2、继承2.1 继承的介绍2.2…

SQL—DQL之执行顺序(基础)

一、引言 1、编写顺序 2、执行顺序 介绍: DQL语句(数据查询语句) 1、首先先执行的是 FROM ,通过 FROM 来决定我要查询的是哪一张表的数据。 2、紧接着通过 WHERE 来指定查询的条件。 3、第三步就是通过 GROUP BY 以及 HAVING 来…

为了新来的扫地机器人,我差点把自家狗子给扔了

文 | 螳螂观察 作者 | 凯乐 作为一个大龄未婚男青年,我承认,我很懒。 有多懒?就连用来偷懒的扫地机器人我也一直懒得去买。 要不是朋友实在看不下去,在前不久生日时送了我一台二手扫地机器人(没错,是他…

.NET数据交互之生成和读取YAML文件

最近在项目中,业务上需要与Python进行交互,而Python程序用的配置文件主要是YAML,程序以命令行形式运行,前端页面由C#通过WPF开发完成。现在需要通过C#生成YAML配置文件,并经过Python读取和修改后,再次由C#进…

运维开发.Kubernetes探针与应用

运维系列 Kubernetes探针与应用 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263…