Python读取Excel根据每行信息生成一个PDF——并自定义添加文本,可用于制作准考证

文章目录

  • 有点小bug的:
  • 最终代码(无换行):
  • 有换行最终代码无bug

在这里插入图片描述根据Excel自动生成PDF,目录结构如上

有点小bug的:

# coding=utf-8
import pandas as pd
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
import os# 读取Excel文件
excel_path = 'testdata.xlsx'  # Excel文件路径
df = pd.read_excel(excel_path)# 定义输出文件夹路径为当前工作目录
output_folder = os.getcwd()# 确保输出文件夹存在
if not os.path.exists(output_folder):os.makedirs(output_folder)# 注册中文字体
# 注意:这里使用的是系统中已安装的字体,你可能需要根据你的系统情况来选择合适的中文字体
pdfmetrics.registerFont(TTFont('

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在flutter中添加video_player【视频播放插件】

添加插件依赖 dependencies:video_player: ^2.8.3插件的用途 在Flutter框架中,video_player 插件是一个专门用于播放视频的插件。它允许开发者在Flutter应用中嵌入视频播放器,并提供了一系列功能来控制和定制视频播放体验。这个插件对于需要在应用中展…

LeetCode 19.删除链表的倒数第N个结点

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5] 示例 2: 输入:head [1], n 1 输出:[] 示例 3&#x…

STM32F4系列单片机的定时器讲解和计数器,PWM信号输出,PWM信号捕获的实现对电机进行控制和监测功能

1.定时器功能介绍: 在控制领域里面,我们可以用信号输出定时器,进行PWM的控制,从而达到控制电机的目的,通过输入捕获功能可以用来接收外部的数字信号,用于测量脉冲宽度、频率或周期等。在这里给大家介绍下&…

备考ICA----Istio实验15---开启 mTLS 自动双向认证实验

备考ICA----Istio实验15—开启mTLS自动双向认证实验 在某些生成环境下,我们希望微服务和微服务之间使用加密通讯方式来确保不被中间人代理. 默认情况下Istio 使用 PERMISSIVE模式配置目标工作负载,PERMISSIVE模式时,服务可以使用明文通讯.为了只允许双向 TLS 流量,…

文本自动粘贴编辑器:支持自动粘贴并筛选手机号码,让信息处理更轻松

在信息时代的浪潮中,文本处理已成为我们日常工作与生活的重要组成部分。无论是商务沟通、社交互动还是个人事务处理,手机号码的筛选与粘贴都显得尤为关键。然而,传统的文本处理方式效率低下、易出错,已无法满足现代人的高效需求。…

netty使用ChunkedWriteHandler发送TextWebSocketFrame消息导致内存溢出

netty版本 <dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.50.Final</version></dependency>此版本ChunkedWriteHandler 的write方法如下 public class ChunkedWriteHandler exten…

【tensorflow框架神经网络实现鸢尾花分类—优化器】

文章目录 1、前言2、神经网络参数优化器2.1、SGD2.2、SGDM2.3、Adagrad2.4、RMSProp2.5、Adam 3、实验对比不同优化器4、结果对比 1、前言 此前&#xff0c;在【tensorflow框架神经网络实现鸢尾花分类】一文中使用梯度下降算法SGD&#xff0c;对权重 w w w和偏置 b b b进行更新…

【系统技术演进】2018-2023

引子 2018-2023年&#xff0c;我所在的公司&#xff0c;架构上经历了数次转折、变化&#xff0c;在这个过程中&#xff0c;产生了很多对技术和职业的思考&#xff0c;仅以此来记录&#xff0c;在这个过程中所经历的&#xff0c;以及成长的过程和反思。 故事开始 1.混乱的Dubb…

Java零基础入门-异常、线程(完结篇)

一、本期教学目标 掌握如何自定义异常。自定义异常实战练习。掌握进程/线程的概念及区别。理解并发与并行的区别。掌握如何创建线程。 二、前言 在上一期&#xff0c;我们是重点学习了异常如何声明、如何捕获、finally如何使用&#xff1f;以及对于多个异常怎么处理&#xff…

LeetCode刷题记(一):1~30题

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以…

vscode 重命名很慢或失败 vscode renames are slow

网上问题&#xff0c; 插件问题&#xff08;我遇见的排除&#xff0c;不是&#xff09;被其他程序占用问题&#xff0c;&#xff08;我这边是这个&#xff09; 解决方案&#xff1a; 打开【资源管理器】&#xff0c;使用火绒 或其他软件&#xff0c;查看文件夹 or 文件 被哪个…

【面试八股总结】传输控制协议TCP(二)

参考资料 &#xff1a;小林Coding、阿秀、代码随想录 一、TCP报文段首部 TCP 虽然是面向字节流的&#xff0c;但 TCP 传送的数据单元却是报文段。 一个 TCP 报文段分为首部和数据两部分&#xff0c;TCP 报文段首部的前 20 个字节是固定的&#xff0c;后面有 4n 字节是根据需要…