【教学类65-01】20240622秘密花园涂色书01(通义万相)(A4横版2张,一大3小 38张纸76份)

server/2024/10/21 11:39:46/

背景需求:

用通义万相制作秘密花园涂色书

关键词(中文):秘密花园涂色书,简单笔画,卡通,黑白轮廓,未着色,幼儿插图,线条画,没有背景,没有颜色,黑白漫画线条艺术:,线描,空背景,粗轮廓,清晰的线条,矢量线。简单,大,

这个关键词,并不能生成4个,大多是3张图。

用UIBOT下载,

有重复的图片需要删除

删除后的图片

通义的“花园”涂色书,质量还是不错的,我做的都是1:1

素材模版

花园图片是正方形,下面还有一个长方形,所以我想再放点插图(花卉、蝴蝶、大头娃娃,都是通义万象下载的图片),让幼儿练习涂色和裁剪,黏贴在画面花园图片上。

最少的一份图片是人物图片,76张(双数,这个数字必须能够除以4才可以),另外的图片也抽取前76张。

代码展示

python">'''
秘密花园涂色书(通义鱼类图片,花园2图+3个小图片)
作者:AI对话大师,阿夏
2024年6月22日'''import os
import time
import random
from docx import Document
from docx.shared import Pt, Inches, Cm, RGBColor
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
# from docx.enum.text import WD_VERTICAL_ALIGNMENT
# from docx.enum.table import WD_CELL_VERTICAL_ALIGNMENT
from docx.oxml.ns import qn
from docxtpl import DocxTemplate
import pandas as pd
from docx2pdf import convertprint('----------第1步:提取所有的幼儿照片的路径------------')
# 文件信息
path = r'C:\Users\jg2yXRZ\OneDrive\桌面\秘密花园涂色书'# 读取每个子文件夹里的图片
subfolders = [name for name in os.listdir(path) if os.path.isdir(os.path.join(path, name))]
# print(len(subfolders))
# 6个文件夹jpg_paths = []
for v in range(1, len(subfolders)):png_paths = []first_subfolder = subfolders[v]for root, dirs, files in os.walk(os.path.join(path, first_subfolder)):for file in files:if file.endswith('.png'):png_paths.append(os.path.join(root, file))jpg_paths.append(png_paths)
# print(jpg_paths)
# print(len(jpg_paths))# 4组# 74张图片
path_jpg = []
for w in range(4):b = jpg_paths[w][:76]  # 提取几张图片path_jpg.append(b)print(path_jpg)
# print(len(path_jpg))# 4path3 = [[path_jpg[k][h] for k in range(len(path_jpg))] for h in range(38)]
print(path3)
print(len(path3))# 从 path 中抽取 2 个一组
groups = [path3[i:i+2] for i in range(0, len(path3), 2)]
print(groups)
print(len(groups))pathend=[]
for u in groups:   ll = [item for sublist in u for item in sublist]pathend.append(ll)
print(pathend)
print(len(pathend))
# for i in pathend:
#     print(i)# 导入图片
pic=['00','10','11','12','04','14','15','16']
long=['14','2.96','5.5','5.5','14','2.96','5.5','5.5']
wide=['14','5.5','5.5','5.5','14','5.5','5.5','5.5']
# 每4个图片一组进行处理# 新建文佳佳
ten_folder = path+r'\零时Word'
os.makedirs(ten_folder , exist_ok=True)for nn in range(int(len(pathend))):      # 读取图片的全路径  的数量 31张doc = Document(path+r'\02涂色书模板1大3小.docx')   table = doc.tables[0]          # 4567(8)行for l in range(int(len(long))):# 单元格坐标figures=pathend[nn][l]           # 图片的全路径的第一张 a=int(pic[l][0])b=int(pic[l][1])# 写入1张大图run=doc.tables[0].cell(a,b).paragraphs[0].add_run()        # # 图片位置 第一个表格的0 3 插入照片run.add_picture(r'{}'.format(figures),width=Cm(float(long[l])),height=Cm(float(wide[l])))table.cell(a,b).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中 doc.save(ten_folder+r'\{}.docx'.format('%02d'%nn))   from docx2pdf import convert# docx 文件另存为PDF文件inputFile = ten_folder+fr'\{nn:02d}.docx'  # 要转换的文件:已存在outputFile = ten_folder+fr'\{nn:02d}.pdf'  # 要生成的文件:不存在# 先创建 不存在的 文件f1 = open(outputFile, 'w')f1.close()# 再转换往PDF中写入内容convert(inputFile, outputFile)print('----------第4步:把都有PDF合并为一个打印用PDF------------')# 多个PDF合并(CSDN博主「红色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)
import os
from PyPDF2 import PdfFileMerger
target_path =  ten_folder
pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
pdf_lst.sort()
file_merger = PdfFileMerger()
for pdf in pdf_lst:print(pdf)file_merger.append(pdf)
file_merger.write(path+fr"\01涂色书1大3小({len(pathend)*2}人共{int(len(pathend))}份).pdf")
file_merger.close()
# doc.Close()# print('----------第5步:删除临时文件夹------------')    
import shutil
shutil.rmtree(ten_folder) #递归删除文件夹,即:删除非空文件夹

结果展示

玩法:

1、一张纸剪成2张,

2、彩色铅笔或其他颜色笔涂色

3、将下面的三个图案,花卉、蝴蝶,人物涂色、剪下来贴在上面的画布上


http://www.ppmy.cn/server/51403.html

相关文章

直播中的美颜技术详解:视频美颜SDK的开发与应用

今天,笔者将深入探讨直播中的美颜技术,解析视频美颜SDK的开发与应用。 一、视频美颜技术概述 视频美颜技术主要通过实时处理视频流,对人脸进行优化和修饰,使直播画面更加美观。这些功能不仅提升了用户的直播体验,还极…

AI-“国外一开源,国内就创新”!

大模型领域中美差距有多大? 近年来,人工智能技术在全球范围内迅速发展,特别是在大型语言模型和机器学习方法方面取得了突破性进展。在这个领域,计算能力的提升也推动了技术的革命性进步。 作为世界上两大的重要经济体&#xff0…

Hive分区和分桶

分区: 根据某一列进行进行划分存储,常用的有时间分区; 查询数据时只需要扫描特定的分区数据,不需要全盘扫描,节省时间, 方便数据归档和清理 创建分区表 create table table_name( col1 int, col2 string ) partition …

数据仓库和数据库有什么区别?

一、什么是数据仓库二、什么是数据库三、数据仓库和数据库有什么区别 一、什么是数据仓库 数据仓库(Data Warehouse)是一种专门用于存储和管理大量结构化数据的信息系统。它通过整合来自不同来源的数据,为企业提供统一、一致的数据视图&…

Oracle中递归查询(START WITH……CONNECT BY……)

一、基本语法 在Oracle中START WITH……CONNECT BY……一般用来查找存在父子关系的数据,也就是树形结构的数据。 SELECT * FROM TABLE WHERE 条件3 START WITH 条件1 CONNECT BY 条件2;start with [condition]:设置起点,用来限制第一层的数…

(南京观海微电子)——TFT LCD压合技术

TFT-LCD TFT-LCD open cell后段制程主要指的是将驱动IC和PCB压合至液晶板上,这个制程主要由三个步骤组成: 1.ACF (Anisotropic Conductive Film)的涂布。 在液晶板需要压合驱动IC的地方涂布ACF,ACF又称异方性导电胶膜,特点是上下…

Selenium WebDriver - 浏览器交互

本文翻译整理自:https://www.selenium.dev/documentation/webdriver/interactions/ 文章目录 一、获取浏览器信息1、获取头衔2、获取当前URL 二、浏览器导航1、导航到2、后退3、往前4、刷新 三、JavaScript警报、提示和确认1、警报2、确认3、提示 四、使用cookie1、…

购物返利系统中的数据处理与优化策略

购物返利系统中的数据处理与优化策略 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 随着电商行业的不断发展,购物返利系统作为一种常见的营销手段…