背景需求:
风变的AI对话大师一年到期了,也没有看到续费的按钮。不能使用它写代码了。
MJ早就用完了,最后480次,我担心信息课题会用到它生图,所以不敢用。
最近探索其他类似MJ的免费出图工具——找到了每天给50张免费图的“通义万相”。
参照动物面具样式,下载大量的正脸卡通动物简笔画
【教学类-36-07】20230707三只对称蝴蝶(midjounery-niji)(涂色、裁剪、游戏(飞舞的蝴蝶))-CSDN博客文章浏览阅读335次。【教学类-36-07】20230707三只对称蝴蝶(midjounery-niji)(涂色、裁剪、游戏(飞舞的蝴蝶))https://blog.csdn.net/reasonsummer/article/details/131598617
关键词模式:(中文输入)
鹅的面具、儿童面具,单画,卡通,黑白轮廓,未着色,幼儿插图,彩色书,线条画,没有背景,没有颜色,黑白漫画线条艺术:,空背景,粗轮廓,清晰的线条,矢量线。简单,大,可爱
文心一言问了50种常见的动物+农场动物
使用UIBOT自动模仿自动输入文字并生成,一张图40秒等候
生成图片下载,不像MJ可以一次下载四张连起来的图片,必须一张一张下载,很麻烦,但是图片不用切割了,已经是一张一张的。
使用UIBOT选择一行4个的按钮下载(这里位置不稳定,很容易报错)
下载图片
有彩色和黑白的
人工选一些看上去适合的面具图片
标准:非彩色、可爱的、图像比较大。
最后分成4类图片
1、彩图
2、看不懂动物是什么
3、动物不好看
4、适合的
最后获得76张图
生成学具
一、 A4(一个大面具,依此缩小的图案)
0.用到的素材
1、单元格工作表XY值
2、每张图片的大小
3、上代码
# '''
# 目的:通义万象生成的动物面具:(长方形)19.5一大多小双面打印
# 作者:阿夏
# 时间:2024年6月8日21:27
# '''
# '''
# '''
import os
folder_path=r'C:\Users\jg2yXRZ\OneDrive\桌面\通义动物面具'
print('----------第1步:提取所有的幼儿照片的路径------------')
ppp=folder_path+r'\04适合的'
print('----------第2步:新建一个临时文件夹------------')
qqq=folder_path+r'\零时Word'
os.makedirs(qqq,exist_ok=True)
path=[]
# 过滤:只保留png结尾的图片 31张(多几张备用)
imgs=os.listdir(ppp)
for img in imgs:
if img.endswith(".png"):
path.append(ppp+'\\'+img)
# 所有图片的路径
print(path)
# 提取动物名字倒数第4个字之前的动物名字
print(imgs)
print('----------第3步:随机抽取12张图片 ------------')
import docx
from docx import Document
from docx.shared import Pt
from docx.shared import RGBColor
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.oxml.ns import qn
import random
import os,time
import docx
from docx import Document
from docx.shared import Inches,Cm,Pt
from docx.shared import 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 convert
from docx.shared import RGBColor
pic=['00','01','11','21','22','32','33']
long=['19.23','8.2','4.9','4.3','2.7','2','2']
for nn in range(0,int(len(path))): # 读取图片的全路径 的数量 31张
doc = Document(folder_path+r'\蝴蝶长方形19.5.docx')
figures=path[nn] # 图片的全路径的第一张
table = doc.tables[0] # 4567(8)行
for l in range(len(long)):
# 单元格坐标
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(long[l])))
table.cell(a,b).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中
doc.save(qqq+r'\{}.docx'.format('%02d'%nn))
from docx2pdf import convert
# docx 文件另存为PDF文件
inputFile = qqq+fr'\{nn:02d}.docx' # 要转换的文件:已存在
outputFile = qqq+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 = qqq
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(folder_path+fr"\通义动物面具19.5制作({len(path)}人共{len(path)}份).pdf")
file_merger.close()
# doc.Close()
# print('----------第5步:删除临时文件夹------------')
import shutil
shutil.rmtree(qqq) #递归删除文件夹,即:删除非空文件夹
4、最后结果——一个大面具,配上逐渐缩小的同类动物。
幼儿可以将不同大小的动物图案制作不同的手工作品
1、大面具、
2、手环、
3、头饰
4、项链
5、安静书(翻页连续绘本)
6、连环画(每个格子上有动物头像)
7、与同伴商议,互相交换动物卡片,获得更多的动物类型
8、排序
生成学具
二、 正方形(一个15*15CM面具)
0.用到的素材
1、单元格工作表XY值
2、每张图片的大小
3、上代码
# '''
#
# 目的:通义万象生成的动物面具:15*15正方形手工纸
# 作者:阿夏
# 时间:2024年6月8日21:27
# '''
# '''
# '''
import os
folder_path=r'C:\Users\jg2yXRZ\OneDrive\桌面\通义动物面具'
print('----------第1步:提取所有的幼儿照片的路径------------')
ppp=folder_path+r'\04适合的'
print('----------第2步:新建一个临时文件夹------------')
qqq=folder_path+r'\零时Word'
os.makedirs(qqq,exist_ok=True)
path=[]
# 过滤:只保留png结尾的图片 31张(多几张备用)
imgs=os.listdir(ppp)
for img in imgs:
if img.endswith(".png"):
path.append(ppp+'\\'+img)
# 所有图片的路径
print(path)
# 提取动物名字倒数第4个字之前的动物名字
print(imgs)
print('----------第3步:随机抽取12张图片 ------------')
import docx
from docx import Document
from docx.shared import Pt
from docx.shared import RGBColor
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.oxml.ns import qn
import random
import os,time
import docx
from docx import Document
from docx.shared import Inches,Cm,Pt
from docx.shared import 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 convert
from docx.shared import RGBColor
for nn in range(0,int(len(path))): # 读取图片的全路径 的数量 31张
doc = Document(folder_path+r'\蝴蝶正方形15.docx')
figures=path[nn] # 图片的全路径的第一张
table = doc.tables[0] # 4567(8)行
#
# 写入照片
run=doc.tables[0].cell(0,0).paragraphs[0].add_run() # # 图片位置 第一个表格的0 3 插入照片
run.add_picture(r'{}'.format(figures),width=Cm(14.3),height=Cm((14.3))) # 14.7
table.cell(0,0).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中
doc.save(qqq+r'\{}.docx'.format('%02d'%nn))
from docx2pdf import convert
# docx 文件另存为PDF文件
inputFile = qqq+fr'\{nn:02d}.docx' # 要转换的文件:已存在
outputFile = qqq+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 = qqq
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(folder_path+fr"\通义动物面具15制作({len(path)}人共{len(path)}份).pdf")
file_merger.close()
# doc.Close()
# print('----------第5步:删除临时文件夹------------')
import shutil
shutil.rmtree(qqq) #递归删除文件夹,即:删除非空文件夹
4、最后结果——一个14CM的小面具(去掉白边,实际图案也就巴掌大)
手工纸打印的一个图案,可以让孩子制作面具,但是只有一个图案,绘画裁剪,做起来可能很快了(没法消磨时间)。
1、