Python 实现自动完成A4标签排版打印功能


Posted in Python onApril 09, 2020

老婆大人让俺帮她通过Excel生成百人的准考证,她们学校打算来一次高考模拟。由于高考改革,每个学生的考试科目不一样,需要自动生成一下。

我一个程序员平时很少用到Excel,自己也不打算深入研究这个软件。如何解决她的需求呢?我直接想到了python,无所不能的python肯定可以搞定这个小case。

解决思路

数据处理:这个很简单的

生成可打印的文件

这个有些难度,我首先想到生成word。而且python也有word包来解决,不过后来想了一下,这个方案有问题。word结构不开源,格式和样式处理起来应该有问题。另外word在国外不普遍,遇到问题解决方案肯定不多。而PDF却不同,PDF在国外应用广使用人多,肯定好解决。

寻找方案

通过python 生成 pdf的方案确定后,果然通过Google找到了pylabels这个库。

如何解决

第一步安装库

pip install pylabels

第二步 执行下面的代码

import labels
from reportlab.graphics import shapes
 
specs = labels.Specification(210, 297, 2, 8, 90, 25, corner_radius=2)
 
def draw_label(label, width, height, obj):
 
label.add(shapes.String(2, 2, str(obj), fontName="Helvetica", fontSize=40))
 
# Create the sheet.
sheet = labels.Sheet(specs, draw_label, border=True)
 
# Add a couple of labels.
sheet.add_label("Hello")
sheet.add_label("World")
 
# We can also add each item from an iterable.
sheet.add_labels(range(3, 22))
 
sheet.add_label("Oversized label here")
 
# Save the file and we are done.
sheet.save('basic.pdf')
print("{0:d} label(s) output on {1:d} page(s).".format(sheet.label_count, sheet.page_count))

数据处理部分我就不分享了,就是简单的读取csv文件。

以上这篇Python 实现自动完成A4标签排版打印功能就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python去除字符串两端空格的方法
May 21 Python
深入浅析ImageMagick命令执行漏洞
Oct 11 Python
利用Python复制文件的9种方法总结
Sep 02 Python
tensorflow实现训练变量checkpoint的保存与读取
Feb 10 Python
Python使用pyyaml模块处理yaml数据
Apr 14 Python
8种常用的Python工具
Aug 05 Python
python+django+selenium搭建简易自动化测试
Aug 19 Python
python操作redis数据库的三种方法
Sep 10 Python
python实现图片素描效果
Sep 26 Python
Python创建文件夹与文件的快捷方法
Dec 08 Python
教你怎么用Python监控愉客行车程
Apr 29 Python
图文详解matlab原始处理图像几何变换
Jul 09 Python
python网络编程:socketserver的基本使用方法实例分析
Apr 09 #Python
Python使用扩展库pywin32实现批量文档打印实例
Apr 09 #Python
python3 自动打印出最新版本执行的mysql2redis实例
Apr 09 #Python
python实现处理mysql结果输出方式
Apr 09 #Python
python读取配置文件方式(ini、yaml、xml)
Apr 09 #Python
python数据分析工具之 matplotlib详解
Apr 09 #Python
使用python检查yaml配置文件是否符合要求
Apr 09 #Python
You might like
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
jQuery EasyUI API 中文文档 - Tabs标签页/选项卡
2011/10/01 Javascript
js 判断上传文件大小及格式代码
2013/11/13 Javascript
jQuery 取值、赋值的基本方法整理
2014/03/31 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
Javascript生成全局唯一标识符(GUID,UUID)的方法
2016/02/27 Javascript
原生js制作日历控件实例分享
2016/04/06 Javascript
JavaScript编写检测用户所使用的浏览器的代码示例
2016/05/05 Javascript
BootStrap组件之进度条的基本用法
2017/01/19 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
2017/06/15 Javascript
解决vue组件中使用v-for出现告警问题及v for指令介绍
2017/11/11 Javascript
vue二级路由设置方法
2018/02/09 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
vue组件中iview的modal组件爬坑问题之modal的显示与否应该是使用v-show
2019/04/12 Javascript
原生JS实现萤火虫效果
2020/03/07 Javascript
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
微信跳一跳python辅助脚本(总结)
2018/01/11 Python
pygame游戏之旅 添加游戏暂停功能
2018/11/21 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
django的model操作汇整详解
2019/07/26 Python
Windows下python3安装tkinter的问题及解决方法
2020/01/06 Python
深度学习入门之Pytorch 数据增强的实现
2020/02/26 Python
python3发送request请求及查看返回结果实例
2020/04/30 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
Python requests及aiohttp速度对比代码实例
2020/07/16 Python
加拿大健康、婴儿和美容产品在线购物:Well.ca
2016/11/30 全球购物
美国存储和组织商店:The Container Store
2017/08/16 全球购物
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
Bath & Body Works阿联酋:在线购买沐浴和身体用品
2021/02/27 全球购物
师范学院教师自荐书
2014/01/31 职场文书
护理助产毕业生的求职信
2014/03/02 职场文书
大学生国庆节65周年演讲稿范文
2014/09/25 职场文书
2014年材料员工作总结
2014/11/19 职场文书
先进个人评语大全
2015/01/04 职场文书
大学生个人学年总结
2015/02/15 职场文书