【教学类-44-04】20240130 print dashed(虚线字体)制作的数字描字帖

作品展示:背景需求:

制作绿色数字的数字描字帖

选用字体:print dashed(虚线字体)

【教学类-44-03】20240111阿拉伯数字字帖的字体(三)——德彪钢笔行书(实线字体)和print dashed(虚线字体)-CSDN博客文章浏览阅读1.1k次,点赞29次,收藏20次。【教学类-44-03】20240111阿拉伯数字字帖的字体(三)——德彪钢笔行书(实线字体)和print dashed(虚线字体)https://blog.csdn.net/reasonsummer/article/details/135532899

素材准备:

代码展示:

'''

作者:阿夏
时间:2024年1月30日
名称:阿拉伯数字字帖print dashed

'''

'''

作者:阿夏
时间:2023年9月13日
A4横版两人,每人三行

'''

import xlwt
import xlrd
import os
import random
from win32com.client import constants,gencache
from win32com.client.gencache import EnsureDispatch
from win32com.client import constants # 导入枚举常数模块
import os,time
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

num=int(input('多少份双数\n'))
lie=16
hang=10

ziti='Print Dashed'
size=50



# 新建一个”装N份word和PDF“的临时文件夹
imagePath1=r'C:\Users\jg2yXRZ\OneDrive\桌面\数字描字帖\零时Word'
if not os.path.exists(imagePath1):  # 判断存放图片的文件夹是否存在
    os.makedirs(imagePath1)  # 若图片文件夹不存在就创建

print('-----第1步 制作数字-------')

number=[]

for i in range(0,10):
    for h in range(lie):
        number.append(i)
print(number)
print('-----第2步 制作表格-------')
# # 25个数组【】

# #单元格坐标
bg=[]
for x in range(hang):
    for y in range(lie):
        z2='{}{}'.format('%02d'%x,'%02d'%y)
        bg.append(z2)
print(bg)

# # ['00', '01', '02', '03', '04', '10', '11', '12', '13', '15', '20', '21', '22', '23', '24']

for n in range(int(num/2)):
    doc = docx.Document(r"C:\Users\jg2yXRZ\OneDrive\桌面\数字描字帖\01数字描字本printdashed字帖.docx")
    for b in range(2):
        table = doc.tables[b] 
        # print(p)
        for t in range(len(bg)):    # 0-15
            # print(list[t])
                        
            pp=int(bg[t][0:2])     # 提取表格bg里面每个元素的第0个数字==单元格X坐标  t=索引数字
            qq=int(bg[t][2:4]) 
            k=int(number[t])
            # f=font[t]   

            print(pp,qq,k)

            run=table.cell(pp,qq).paragraphs[0].add_run(str(k))    # 在单元格0,0(第1行第1列)输入第0个名字
            run.font.name =ziti  #输入时不同字体
            run.font.size = Pt(size)  #输入字体大小80或68号
            run.bold=True
            run.font.color.rgb = RGBColor(0,0,0) #设置颜色黑体

            r = run._element
            r.rPr.rFonts.set(qn('w:eastAsia'),ziti )#将输入语句中的中文部分字体变为华文行楷
            table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中

    doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\数字描字帖\零时Word\{}.docx'.format('%02d'%n))#保存为XX学号的零时word  

    from docx2pdf import convert
    # docx 文件另存为PDF文件
    inputFile = r"C:\Users\jg2yXRZ\OneDrive\桌面\数字描字帖\零时Word\{}.docx".format('%02d'%n)# 要转换的文件:已存在
    outputFile = r"C:\Users\jg2yXRZ\OneDrive\桌面\数字描字帖\零时Word\{}.pdf".format('%02d'%n)  # 要生成的文件:不存在
    # 先创建 不存在的 文件
    f1 = open(outputFile,'w')
    f1.close()
    # 再转换往PDF中写入内容
    convert(inputFile, outputFile)

    from docx2pdf import convert


print('----------第4步:把都有PDF合并为一个打印用PDF------------')

import os
from PyPDF2 import PdfMerger
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 = PdfMerger()
for pdf in pdf_lst:
    print(pdf)
    file_merger.append(pdf)
# file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/数字描字帖/(打印合集)大班A整页描字帖2乘5加表格-4名字-({}人).pdf".format(num))
file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/数字描字帖/(打印合集)print dashed 线描阿拉伯数字0-9({}份).pdf".format(num))
file_merger.close()
# doc.Close()

# # print('----------第5步:删除临时文件夹------------')    
import shutil
shutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/数字描字帖/零时Word') #递归删除文件夹,即:删除非空文件夹`


设置段落间距,努力把print dashed虚线字体变成最大的。人工测算

其他虚线字体

【教学类-44-02】20231226阿拉伯数字字帖的字体(二)——文鼎标楷国字体 AR StdKaiGDLB5 Md(虚线字体)_ar kaib5std md-CSDN博客文章浏览阅读788次,点赞25次,收藏8次。【教学类-44-02】20231226阿拉伯数字字帖的字体(二)——文鼎标楷国字体 AR StdKaiGDLB5 Md(虚线字体)_ar kaib5std mdhttps://blog.csdn.net/reasonsummer/article/details/135253842

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/365103.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue3前端开发,element-plus前端框架探秘:scope对象

vue3前端开发,element-plus前端框架探秘:scope对象!我们经常需要对当前行的数据进行操作,比如增加,删除,编辑等,为此我们需要传递当前行所对应的唯一主键,通常情况下,当前行对应的业务主键是id属…

DHCP简介

定义 动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是一种用于集中对用户IP地址进行动态管理和配置的技术。即使规模较小的网络,通过DHCP也可以使后续增加网络设备变得简单快捷。 DHCP是在BOOTP(BOOTstrap Protoc…

前端使用cache storage实现远程图片缓存

Cache Storage 的主要特点和用途 缓存网络资源:可以将经常访问的网络资源缓存到 Cache Storage 中,以提高网页加载速度,减少网络请求。离线访问:当用户处于离线状态时,可以使用 Cache Storage 中的缓存资源来加载网页…

STM32目录结构

之前一直头疼的32目录,比51复杂,又没有C规律,也不像python脚本文件关联不强,也不像工整的FPGA工程,编的时候到处放,爆出的错千奇百怪。短暂整理了一个,还是没有理得很轻。 startup_stm32f10x_m…

这两年,技术圈最流行什么前端框架?

2023 年,TypeScript 的每月下载量持续稳定增长,年度累计下载量高达2,071,832,110(20.7 亿),展现了强大的市场需求和用户认可。 本文来通过详细的数据(2023 年 npm 累计下载量),看看…

【论文阅读笔记】Advances in 3D Generation: A Survey

Advances in 3D Generation: A Survey 挖个坑,近期填完摘要 time:2024年1月31日 paper:arxiv 机构:腾讯 挖个坑,近期填完 摘要 生成 3D 模型位于计算机图形学的核心,一直是几十年研究的重点。随着高级神经…

视频融合平台EasyCVR推流成功但平台显示不在线是什么原因?

TSINGSEE青犀视频监控汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力&…

Excel——自定义排序、多条件排序

一、自定义排序 Q:请按照“新疆、湖北、天津、北京、湖南”的先后顺序整理以下表格 A:步骤如下: 选择表格中任意一个单元格 选择【排序】——【自定义排序】 选择主要关键字【地区】,在次序中选择【自定义序列】 选择【添加】&…

第8章 磁盘管理

第8章 磁盘管理 8.1 标准磁盘管理 8.1.1 两种分区格式 MBR(Master Boot Record,主引导分区),支持 4 个主分区或者 3 个主分区 1 个扩展分区,分区的空间最大支持 2.2 TB。 GPT(GUID Partition Table&…

2024美赛C题完整解题教程 网球运动势头(持续更新)

2024美赛已经于今天早上6点准时公布题目。本次美赛将全程跟大家一起战斗冲刺O奖!思路持续更新。 2024 MCM Problem C: Momentum in Tennis (网球运动的势头) 注:在网球运动中,"势头"通常指的是比赛中因一系…

LLM App SDK:LangChain vs. LlamaIndex

在Why RAG is big中,我表示支持检索增强生成(RAG)作为私有、离线、去中心化 LLM 应用程序的关键技术。 当你建造一些东西供自己使用时,你就是在孤军奋战。 你可以从头开始构建,但在现有框架上构建会更有效。 NSDT工具推…

如何做好员工离职风险防范和离职危机处理工作

员工退出与离职是企业发展中都会面临的一个普遍现象,这种现象本身没有什么问题,但是如果企业退出与离职管理不善,就会增加企业的管理成本,影响企业的正常经营活动。该电子科技有限公司在发展中也遇到员工离职管理不善带来的问题。…

mfc140.dll丢失的几种修复方式,有效的解决文件丢失问题

mfc140.dll是Microsoft Foundation Class (MFC)库中的一个非常重要的DLL文件。它承载了许多被执行程序使用的函数和资源。这个库主要被广泛应用于开发Windows操作系统上的应用程序。然而,有时候我们可能会遭遇到mfc140.dll缺失或损坏的情况,这会导致依赖…

MongoDB聚合操作

文章目录 聚合操作单一作用聚合聚合管道什么是 MongoDB 聚合框架管道(Pipeline)和阶段(Stage)常用的管道聚合阶段聚合表达式数据准备$project$match$count$group accumulator操作符$unwind$limit$skip$sort$lookup案例聚合操作案例…

Unity 协程(Coroutine)高级用法实例

文章目录 简介1. 异步加载场景并显示加载进度2. 延迟执行与定时器功能3. 动画序列控制4. 网络请求处理5. 渐变颜色或透明度变化6. 游戏对象的动态移动序列7. 处理帧率依赖的时间间隔8. 异步加载资源并在完成后初始化 简介 在Unity中,C#协程(Coroutine&a…

Qt QCustomPlot 鼠标悬浮提示

使用QCustomPlot绘图时,相信大多数童鞋们都会有类似的诉求:希望鼠标移动到节点时,可以显示该节点的数据。这里转载了一篇关于 鼠标悬浮提示 的一篇文章,并对该文章涉及的代码经过了整理,经实践证明是可行的。 鼠标悬浮…

操作系统--Linux内核进程间的通信方式

每个进程的用户地址空间都是独立的,一般而言是不能互相访问的,但内核空间是每个进程都共享的,所以进程之间要通信必须通过内核。 一、管道 匿名管道:它没有名字标识,匿名管道是特殊文件只存在于内存,没有存…

二、Gradle 与 Idea 整合

这里写自定义目录标题 1、Groovy简介2、Groovy 安装3、创建 Groovy 项目4、Groovy 基本语法5、在 idea 中创建普通 java 工程 1、Groovy简介 详细了解请参考:http://www.groovy-lang.org/documentation.html 2、Groovy 安装 下载后解压到本地 验证: …

springboot完成一个线上图片存放地址+实现前后端上传图片+回显

1.路径 注意路径 2.代码:(那个imagePath没什么用,懒的删了),注意你的本地文件夹要有图片,才可以在线上地址中打开查看 package com.xxx.common.config;import org.springframework.beans.factory.annotat…

HTML+CSS+JS的3D进度条

<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>HTMLCSSJS的3D进度条</title><style>…