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字符串特性及常用字符串方法的简单笔记
Jan 04 Python
Python3解决棋盘覆盖问题的方法示例
Dec 07 Python
python编程通过蒙特卡洛法计算定积分详解
Dec 13 Python
python爬虫基本知识
Mar 05 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
Nov 07 Python
Python进阶之自定义对象实现切片功能
Jan 07 Python
Python多线程模块Threading用法示例小结
Nov 09 Python
关于Python中定制类的比较运算实例
Dec 19 Python
在pycharm中使用matplotlib.pyplot 绘图时报错的解决
Jun 01 Python
Python闭包装饰器使用方法汇总
Jun 29 Python
OpenCV 使用imread()函数读取图片的六种正确姿势
Jul 09 Python
通过python-pptx模块操作ppt文件的方法
Dec 26 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
PHP4实际应用经验篇(6)
2006/10/09 PHP
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
2010/06/04 PHP
支持中文、字母、数字的PHP验证码
2015/05/04 PHP
PHP中的traits简单使用实例
2015/05/13 PHP
微信开发之php表单微信中自动提交两次问题解决办法
2017/01/08 PHP
使用composer命令加载vendor中的第三方类库 的方法
2019/07/09 PHP
拥抱模块化的JavaScript
2012/03/07 Javascript
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
javascript Deferred和递归次数限制实例
2014/10/21 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
2014/10/29 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
基于JQuery及AJAX实现名人名言随机生成器
2017/02/10 Javascript
微信小程序  http请求封装详解及实例代码
2017/02/15 Javascript
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
通俗解释JavaScript正则表达式快速记忆
2017/08/23 Javascript
angular4自定义表单控件[(ngModel)]的实现
2018/11/23 Javascript
js中innerText/textContent和innerHTML与target和currentTarget的区别
2019/01/21 Javascript
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
wx.CheckBox创建复选框控件并响应鼠标点击事件
2018/04/25 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
Python any()函数的使用方法
2019/10/28 Python
tensorflow查看ckpt各节点名称实例
2020/01/21 Python
Django 后台带有字典的列表数据与页面js交互实例
2020/04/03 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
基于Python实现2种反转链表方法代码实例
2020/07/06 Python
纯css3实现的动画按钮的实例教程
2014/11/17 HTML / CSS
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
编写一个类体现构造,公有,私有方法,静态,私有变量
2013/08/10 面试题
小学数学教学反思
2014/02/02 职场文书
艺术设计专业个人求职信
2014/04/10 职场文书
中学生思想品德评语
2014/12/31 职场文书
住房公积金贷款工资证明
2015/06/12 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
Nginx反爬虫策略,防止UA抓取网站
2021/03/31 Servers
JS如何实现基于websocket的多端桥接平台
2021/05/14 Javascript
spring 项目实现限流方法示例
2022/07/15 Java/Android