过去几年,我一直让孩子制作铅画纸的“插入式纸盒”模拟篮子、盒子。插入式纸盒制作有难度,需要反复巩固训练。今年,染色铅画纸基本用光了。所以我就想做一个A4的“盒子纸模”,便于幼儿制作盒子、篮子。
关键词1:
Cartoon animal face, cartoon, black and white outline, uncolored
卡通动物脸,卡通,黑白轮廓,未着色
关键词2:
Cartoon animal rectangular face , cartoon, black and white outline, uncolored
卡通动物矩形脸,卡通,黑白轮廓,未着色
# 参考网址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187
'''
功能:把midjounery 生成的四张图片(动物简笔画卡通图案)切割成小图(png)
作者:阿夏
时间:2023年6月23日 19:51
'''
from PIL import Image
import os
import os.path
long=int(input('图片长度像素(2048,2912,1024)\n'))
wide=int(input('图片宽度像素(2048,1632,1024)\n'))
# 1:1图比例是2048
# 16:9图片比例 2912:1632
small_long=int(input('长边切分2(4*3)\n'))
small_wide=int(input('宽边切分2(4*3)\n'))
wj=input('文件夹名称\n')
# 定义文件所在文件夹
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\{}'.format(wj)
for parent, dir_name, file_names in os.walk(image_dir): # 遍历每一张图片
for filename in file_names:
print(filename)
pic_name = os.path.join(parent, filename)
image = Image.open(pic_name)
_width, _height = image.size
print(_width, _height)
# 四张图片的坐标
t1=[0,0,float(long/small_long),float(wide/small_wide)]
t2=[float(long/small_long),0,long,float(wide/small_wide)]
t3=[0,float(wide/small_wide),float(long/small_long),wide]
t4=[float(long/small_long),float(wide/small_wide),long,wide]
pic=t1+t2+t3+t4
print(pic)
# [0, 0, 1456.0, 816.0, 1456.0, 0, 2912, 816.0, 0, 816.0, 1456.0, 1632, 1456.0, 816.0, 2912, 1632]
# 每张图有4个坐标
for p in range(int(len(pic)/4)):
pp=pic[p*4:p*4+4]
print(pp)
# 定义裁剪范围(left, upper, right, lower)
# # box = image.crop((0,0,123,123))
box = image.crop((pp[0],pp[1],pp[2],pp[3]))
name = filename[:-4]+'_'+str(p) +'.png'
box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\{}\{}'.format(wj,name))
print('Done!')
'''
简易茶杯1.0(一页2份 )
目的:
制作简易的方形茶杯
作者:阿夏
时间:2023年9月21日)
'''
import os
from PIL import Image
num=int(input('生成多少份28人\n'))
# Number=int(input('随机抽取几个图片(12个)/n'))
print('----------第1步:提取三套图片的所有路径,做成3组合并------------')
path=[]
pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\简易茶杯\动物头像"
# 过滤:只保留png结尾的图片
imgs=os.listdir(pr)
# s=len(imgs)
# s1.append(s)
for img in imgs:
if img.endswith(".png"):
path.append(pr+'//'+img)
print(path)
print(len(path))
print('----------第2步:新建一个临时文件夹------------')
# 新建一个”装N份word和PDF“的文件夹
os.mkdir(r'C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/零时Word')
print('----------第3步:随机抽取5方5圆4混合的图片 ------------')
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.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(num/2)):
figures=[]
doc = Document(r'C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/茶杯.docx')
# 坐标位置,00 10 20 30 01放圆形,
bg=[]
for x in range(1,5):
zb='0{}'.format(x)
bg.append(zb)
for z in range(2):
table = doc.tables[z]
figures=random.sample(path,4) # 随机抽取4个图片
for t in range(len(bg)): # 02
pp=int(bg[t][0])
qq=int(bg[t][1])
# print(p)
k=figures[t]
print(pp,qq,k)
# 写入图片
run=doc.tables[z].cell(pp,qq).paragraphs[0].add_run() # 在第1个表格中第2个单元格内插入国旗
run.add_picture('{}'.format(k),width=Cm(4.6),height=Cm(4.6))
table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中
doc.save(r"C:\Users\jg2yXRZ\OneDrive\桌面\简易茶杯\零时Word\{}.docx".format('%02d'%nn))
from docx2pdf import convert
# docx 文件另存为PDF文件
inputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/零时Word/{}.docx".format('%02d'%nn) # 要转换的文件:已存在
outputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/零时Word/{}.pdf".format('%02d'%nn) # 要生成的文件:不存在
# 先创建 不存在的 文件
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 = 'C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/零时Word'
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("C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/(打印合集)简易茶杯1.0({}人共{}份).pdf".format(num,int(num/2)))
file_merger.close()
# doc.Close()
# print('----------第5步:删除临时文件夹------------')
import shutil
shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/简易茶杯/零时Word') #递归删除文件夹,即:删除非空文件夹
时间:2023年9月21日 15:03 ——15:35
班级:大3
人数:25人
1、幼儿很喜欢小茶杯、小提包。
2、固体胶粘不住底部,最好用双面胶,一次成型
3、两位男孩疯狂玩扑克牌,反复高喊:“我王炸”“我又王炸了”