• 【教学类-38】A4红纸-国旗灯笼(庆祝中华人民共和国成立74周年)


    作品展示:

    背景需求:

    从教十余年,我在每年国庆都带领中大班孩子们制作与“国旗相关”国庆庆祝物品——国旗、礼盒

    一、国旗(吸管、A4红纸、黄纸打印五角星)

    二、铅画纸手提袋(8K铅画纸、A4红纸、黄色打印星星)

    而在春节期间,就经常做这样的简易灯笼

    一、A4红卡纸灯笼

    二、8K染色铅画纸灯笼

    每次做这种一次性节日手工项目,都是一地狼藉、满桌废纸。我疲于奔命地“帮”孩子做成品。

    2023年10月国庆,我准备用A4纸设计一个“国旗灯笼”纸模,减少幼儿制作环节(不要画线),提升“灯笼”制作的整体效率。

    第一次word纸模设计:(粉红纸+黄纸)

    (有国旗图案的照片都发不了。)

    效果分析:

    1、内部的五星红旗图案和74,被外圈的条纹遮挡,看不见。

    2、外圈条纹上的图案或文字(国泰民安)、变成环形立体后,不能识别“国泰民安”。(也会遮挡裁剪的线条)

    纸膜调整:

    1、粉色变成红色纸,外环条纹少一段(白色部分)。

     2、外环条纹面,不添加大型图案和文字(留空白)

    第二次word纸模设计:(红纸+黄纸)

    效果分析:

    1、红黄纸的对比效果强烈,喜庆元素浓厚

    2、外圈条纹上没有图案有点空,尝试在每条上增加一个统一的图案做点缀装饰

    纸膜调整:

    1、外环条纹随机增加一个小图案做点缀装饰(所以要用Python,把每张纸膜的点装饰图案贴上去)

    第三次word纸模设计:(红纸+黄纸+Python小图形)

    确定了纸膜的样式,设计python代码

    一、素材准备

    二、WORD纸膜样式

    以表格框方式制作红旗圆桶和圈条纹的模型,五行红旗的五角星时文本框-五角星,需要手动调整位置。

    代码展示:

    1. '''
    2. 目的:
    3. 1、灯笼纸模
    4. 2、添加图形符号做装饰
    5. 作者:阿夏
    6. 时间:2023年9月26日)
    7. '''
    8. import os
    9. # num=int(input('生成多少份(28人)\n'))
    10. print('----------第1步:符号集合------------')
    11. #
    12. # path=['▲','●','◆','■','★','✿','❀']
    13. # '♠','♥','♦','♣',]
    14. path=['▲','●','◆','■','★','✿','❀','♠','♥','♦','♣','☆','□','◇','○','△','☉','⊕','☼','☺','☏','☽','◎','⊿','√','×','❤','☁',]
    15. # print('----------第2步:新建一个临时文件夹------------')
    16. # # 新建一个”装N份word和PDF“的文件夹
    17. os.mkdir(r'C:\Users\jg2yXRZ\OneDrive\桌面\国庆灯笼\零时Word')
    18. print('----------第3步:随机抽取1张图案 ------------')
    19. import docx
    20. from docx import Document
    21. from docx.shared import Pt
    22. from docx.shared import RGBColor
    23. from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
    24. from docx.oxml.ns import qn
    25. import random
    26. import os,time
    27. import docx
    28. from docx import Document
    29. from docx.shared import Inches,Cm,Pt
    30. from docx.shared import RGBColor
    31. from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
    32. from docx.oxml.ns import qn
    33. from docxtpl import DocxTemplate
    34. import pandas as pd
    35. from docx2pdf import convert
    36. from docx.shared import RGBColor
    37. # 写入表格
    38. bg=[]
    39. for x in range(1,3):
    40. for y in range(0,19):
    41. c='{}{}'.format('%02d'%x,'%02d'%y)
    42. bg.append(c)
    43. print(bg)
    44. for nn in range(0,len(path)):
    45. doc = Document(r'C:\Users\jg2yXRZ\OneDrive\桌面\国庆灯笼\国庆灯笼装饰版本.docx')
    46. # 依次读取所有图形
    47. f=path[nn]
    48. figures=[]
    49. for p in range(len(bg)):
    50. figures.append(f)
    51. print(figures)
    52. #
    53. table = doc.tables[0] # 4567(8)行
    54. for t in range(len(bg)): # 02
    55. pp=int(bg[t][0:2])
    56. qq=int(bg[t][2:4])
    57. # print(p)
    58. k=figures[t]
    59. print(pp,qq,k)
    60. # 写入字符图案
    61. run=table.cell(pp,qq).paragraphs[0].add_run(k) # 在单元格0,0(第1行第1列)输入第0个图图案
    62. run.font.name = '黑体'#输入时默认华文彩云字体
    63. # run.font.size = Pt(46) #输入字体大小默认30号 换行(一页一份大卡片
    64. run.font.size = Pt(26) #输入字体大小默认30号 一行里(可以一页两份)
    65. run.font.bold= True #是否加粗
    66. run.font.color.rgb = RGBColor(0,0,0) #数字小,颜色深0-255
    67. # paragraph.paragraph_format.line_spacing = Pt(180) #数字段间距
    68. r = run._element
    69. r.rPr.rFonts.set(qn('w:eastAsia'), '黑体')#将输入语句中的中文部分字体变为华文行楷
    70. table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中
    71. doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\国庆灯笼\零时Word\{}.docx'.format('%02d'%nn))
    72. doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\国庆灯笼\零时Word\{}.docx'.format('%02d'%nn))
    73. from docx2pdf import convert
    74. # docx 文件另存为PDF文件
    75. inputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/国庆灯笼/零时Word/{}.docx".format('%02d'%nn) # 要转换的文件:已存在
    76. outputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/国庆灯笼/零时Word/{}.pdf".format('%02d'%nn) # 要生成的文件:不存在
    77. # 先创建 不存在的 文件
    78. f1 = open(outputFile, 'w')
    79. f1.close()
    80. # 再转换往PDF中写入内容
    81. convert(inputFile, outputFile)
    82. print('----------第4步:把都有PDF合并为一个打印用PDF------------')
    83. # 多个PDF合并(CSDN博主「红色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)
    84. import os
    85. from PyPDF2 import PdfFileMerger
    86. target_path = 'C:/Users/jg2yXRZ/OneDrive/桌面/国庆灯笼/零时Word'
    87. pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
    88. pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]
    89. pdf_lst.sort()
    90. file_merger = PdfFileMerger()
    91. for pdf in pdf_lst:
    92. print(pdf)
    93. file_merger.append(pdf)
    94. file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/国庆灯笼/(打印合集)国庆灯笼装饰版本1张1个({}人共{}份).pdf".format(len(path),len(path)))
    95. file_merger.close()
    96. # doc.Close()
    97. # print('----------第5步:删除临时文件夹------------')
    98. import shutil
    99. shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/国庆灯笼/零时Word') #递归删除文件夹,即:删除非空文件夹

    一共提供了28个图案,所以生成28张不重复的“国旗灯笼纸模“

    终端运行

    直接运行,不用参数。

    结果展示:

    打印及裁剪准备

    红旗纸模切开来

    示范的样板灯笼

    第一次做灯笼纸模,能力强的幼儿基本上就按照这个示范的灯笼的样式,黏贴各种辅助装饰物

    幼儿操作过程

    时间:2023年9月27日 9:27-10:30

    班级:大4

    人数:26人(共31人)

    琴键环节已经出现了大量的剪断,到了卷圆筒环节,根本没有孩子会做立体造型,我忙着给每个孩子黏贴三角、卷圆环,听此起彼伏的“老师帮帮我”,感觉要疯了。没法拍照了……

    2000 years later……

    孩子们咨询“星星贴在哪里?”

    “随便你们啦,我圆筒都来不及做”……

    先完成的幼儿基本上就按照这个示范的灯笼的样式,黏贴各种辅助装饰物。

    最后成品照片

    感悟:

          纸模制作减少很多步骤,但老师依旧很累地做示范(平面转立体,需要每个孩子近距离感知、反复多次操作。)

    最后

    一首《万疆》庆祝中华人民共和国成立74周年

    祝福伟大的祖国繁荣昌盛,国泰民安。

    20230927A4纸灯笼

    END 

    还有多余的红纸条和黄纸片、

    长的红纸条做星星

    短的红纸条做粽子

    2023年10月14日,中3班快离园的时候,我把红粽子、黄粽子、白粽子放在篮子里,让孩子每人随机选光了。

  • 相关阅读:
    CSharp(C#)语言_委托和事件区别详解
    Kafka偏移量自动提交设置
    PAT乙级1042 字符统计
    【ArcGIS微课1000例】0107:ArcGIS加载在线历史影像服务WMTS
    nodejs+vue+elementui毕业设计选题系统express vscode
    解决 npm install express 遇到的问题总结
    3.6.3、随机接入-CSMA/CD协议
    Hugging News #0912: Hugging Face 2 人入选时代周刊全球百大 AI 人物
    初识RabbitMQ - 安装 - 搭建基础环境
    知识点滴 - 在Win10里添加Excel的ODBC数据源
  • 原文地址:https://blog.csdn.net/reasonsummer/article/details/133420000