【教学类-52-15】20241003动物数独(N宫格通用版3-10宫格)0图、1图、2图、6图、有答案、无答案 组合版24套

c2bdecc67a1c4278a5efc672138b86cb.png

c12dd68941d04d098c77e860e8b9a089.png

c6e50f98d6d644059a07d091fc1feb11.png

579e154b4a964f7a972812c546221d24.png

b63911dc2b95478cadc63469b72e51c0.png

24a5ba19deb342ee9d5eb3475860fd89.png

b188264a02c148478d6faba1e760b241.png

背景需求:

前期制作了每个宫格动物数独的18款作品

【教学类-52-14】20240925动物数独(N宫格通用版3-10宫格)1图、2图、6图、有答案、无答案 组合版18套-CSDN博客文章浏览阅读1.4k次,点赞47次,收藏15次。【教学类-52-14】20240925动物数独(N宫格通用版)1图、2图、6图、有答案、无答案 组合版18套https://blog.csdn.net/reasonsummer/article/details/142524492e0ee2a574d1f43cabecdbc0b3050de2d.png

9月29日,有一位客户提出需求:不想用KT版做背景,需要把动物操作卡缩小,让操作卡背景就是A4大小。

4abe4d1d605f4b6bbf7cd15fb5cf5dbb.png

我觉得这个主意太好了!毕竟切割KT版也要费时间!

如果只要A4打印,可以大大节省手工制作时间!

ca015abbd4ee451fa0a084f3ef9436c7.png

fc1e9b38416d47c6aaa61ea7f0666456.png

于是我重新做了一个代码

f9cc4960b4cd4d47bb99395099191b57.png

从18种动物中选择不同的数量

693ed83e36c64130be63cf73d73a63fe.png

为3-9宫格制作了A4大小的动物卡和操作卡

c33bfea2539846d39911e365bc696623.png
16a27e9d23ae4a6498331e1ca8996a3e.png

175d8ae9274c49b886a2641853651d86.png

13aa7ac955934ce1bc073a9c3d8f0e08.png

dcf10bf2101444ab8833d0b9981029e3.png

e68ffc9693624749a326383a03e2c15c.png

5fba6a2cdfdf4fabaf535e5c5851960a.png

77ecdcdfa32e49fb98ecd4fb7077a016.png

确定A4大小3-9操作的尺寸和格子数

aeff50c1fd3f485bb2b01db780d7aa60.png

然后再制作动物操作卡的时候,读取的四个word模版

773cae2cb826432c88c69e5f910a62f8.png

如果轮到读取第三套word(A4的X图卡片),就在该word模板的第二个表格的第一行写入标题

1215612649824581baa8faee0bc0ec0a.png

最后A4一页操作卡(0图操作卡片)的效果

c2bdecc67a1c4278a5efc672138b86cb.png

c12dd68941d04d098c77e860e8b9a089.png

c6e50f98d6d644059a07d091fc1feb11.png

579e154b4a964f7a972812c546221d24.png

e8a3b53f20404293b06f8180263b1286.png

a714ae1962e64f82b27cff5fab5e1465.png

63150010cbcf4177a7e1112993fb474d.png

代码展示


# -*- coding:utf-8 -*-

'''
制作动物/脸谱数独N宫格通用版(3-10的黏贴关卡 A4 1图2图6图的所有组合 还有一个限定A4大小的0图(3-6宫格)
1.无答案:9种3:3,两两组合
2.有答案:27种 3:3:3,三三组合(实际需要其中9种)
作者:AI对话大师,阿夏
时间:2024年9月24日
'''


print('-----第一板块、动物操作卡(大图片卡一页1图、1页2图 一页6图)-------')

    
# 停顿秒数
# 3、4、5可以用0秒
# 6、

# print('----1、读取行列-------')
import os
import time
from docx import Document
from docx.shared import Cm, Pt, 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 win32com.client import constants, gencache
from win32com.client.gencache import EnsureDispatch
from datetime import datetime
import random
import shutil
import xlwt
import xlrd
from PyPDF2 import PdfMerger

# 图片索引,从0开始 3宫格0-3、4宫格3-7,5宫格7-12,6宫格12-18,7宫格2-9、8宫格10-18,9宫格0-9

start=2
end=9

num=1
# int(input('生成几份\n'))
# 制作"单元格"# 几宫格
hsall=int(input('几宫格?(3-10)\n'))
# 程序开始的时间:

start_time = datetime.now()


# int(input('请输入4或9\n'))
hs=hsall

path=fr'C:\Users\jg2yXRZ\OneDrive\桌面\动物数独N宫格'

# A4操作卡图片(动物大小限定在一张A4内)
A4size=[6.5,4.88,3.9,3.25,2.79,2.44,2.17]
A4gz=[3,4,5,6,7,8,9]
A4pg=[3,4,5,6,7,8,9]
A4gzs=[3,4,5,6,7,8,9]

# A4一页1图2图3图的尺寸
psize=[19.6,14.1,9.39]

# 以下是3=10宫格word里面的图片大小尺寸
# 3=6.4 、4=4.8、5=4.2、6=3 7=2.74 8=2.39 9=2.12 10=1.91
gzsize=[6.4,4.8,3.84,3.2,2.74,2.39,2.12,1.91]
# 3=9宫格宫格
gzsgg=list(range(3, 10))
pg=[1,2,6]
gzs=[1,2,2]


#如果是3-6图,就做一套A4大小的操作卡, 
# 以下是1图、2图、6图、A4图(根据大小调整格子)的插入大小
for w in range(len(A4gz)):
    if hs==A4gz[w]:
        psize.append(A4size[w])
        print(psize)
        # [19.6, 14.1, 9.39, 6.5]

        pg=[1,2,6]
        pg.append(A4pg[w])
        print(pg)
        # [1, 2, 6, 3]

        gzs=[1,2,2]
        gzs.append(A4gzs[w])
        print(gzs)    
        # [1, 2, 2, 3]  

       


# c:\Users\jg2yXRZ\OneDrive\桌面\动物数独N宫格\动物数独(A4的3图卡片).docx


k=['1图关卡','2图关卡','6图关卡',f'A4的{hs}图卡片']
print(k)
for pt in range(len(pg)):
    
    # # 新建一个”装N份word和PDF“的临时文件夹
    imagePath=path+r'\\零时Word'
    os.makedirs(imagePath,exist_ok=True)  # 若图片文件夹不存在就创建
    
    imagePathpaste=path+r'\\05操作卡pdf'
    os.makedirs(imagePathpaste,exist_ok=True) 

    doc = Document(path +fr'\动物数独({k[pt]}).docx')

    # 获取文档中的所有表格
    tables = doc.tables

    # 选择你需要读取的表格(在这种情况下是第1张表格)
    target_table = tables[0]

    # 获取所选表格的行数和列数
    num_rows = len(target_table.rows)
    num_columns = len(target_table.columns)

    print("行数:", num_rows)
    # 3
    print("列数:", num_columns)
    # # 2 

    print('----2、读取图片-------')

    import os

    # 指定文件夹路径
    folder_path = path + r'\02动物图片'

    pic_list = [os.path.join(folder_path, file_name) for file_name in os.listdir(folder_path)]
    # hs=3 提取第1-3个动物图片
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿夏reasonsummer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值