当前位置: 首页 > 编程笔记 >

Python之ReportLab绘制条形码和二维码的实例

纪俊良
2023-03-14
本文向大家介绍Python之ReportLab绘制条形码和二维码的实例,包括了Python之ReportLab绘制条形码和二维码的实例的使用技巧和注意事项,需要的朋友参考一下

条形码和二维码

#引入所需要的基本包
from reportlab.pdfgen import canvas
from reportlab.graphics.barcode import code39, code128, code93
from reportlab.graphics.barcode import eanbc, qr, usps
from reportlab.graphics.shapes import Drawing 
from reportlab.lib.units import mm
from reportlab.graphics import renderPDF
#----------------------------------------------------------------------
def createBarCodes(c):
  barcode_value = "1234567890"
  barcode39 = code39.Extended39(barcode_value)
  barcode39Std = code39.Standard39(barcode_value, barHeight=20, stop=1)
  # code93 also has an Extended and MultiWidth version
  barcode93 = code93.Standard93(barcode_value)
  barcode128 = code128.Code128(barcode_value)
  # the multiwidth barcode appears to be broken 
  #barcode128Multi = code128.MultiWidthBarcode(barcode_value)
  barcode_usps = usps.POSTNET("50158-9999")
  codes = [barcode39, barcode39Std, barcode93, barcode128, barcode_usps]
  x = 1 * mm
  y = 285 * mm
  for code in codes:
    code.drawOn(c, x, y)
    y = y - 15 * mm
  # draw the eanbc8 code
  barcode_eanbc8 = eanbc.Ean8BarcodeWidget(barcode_value)
  d = Drawing(50, 10)
  d.add(barcode_eanbc8)
  renderPDF.draw(d, c, 15, 555)
  # draw the eanbc13 code
  barcode_eanbc13 = eanbc.Ean13BarcodeWidget(barcode_value)
  d = Drawing(50, 10)
  d.add(barcode_eanbc13)
  renderPDF.draw(d, c, 15, 465)
  # draw a QR code
  qr_code = qr.QrCodeWidget('http://blog.csdn.net/webzhuce')
  bounds = qr_code.getBounds()
  width = bounds[2] - bounds[0]
  height = bounds[3] - bounds[1]
  d = Drawing(45, 45, transform=[45./width,0,0,45./height,0,0])
  d.add(qr_code)
  renderPDF.draw(d, c, 15, 405)
#定义要生成的pdf的名称
c=canvas.Canvas("barcodes.pdf")
#调用函数生成条形码和二维码,并将canvas对象作为参数传递
createBarCodes(c)
#showPage函数:保存当前页的canvas
c.showPage()
#save函数:保存文件并关闭canvas
c.save()

运行结果:

以上这篇Python之ReportLab绘制条形码和二维码的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Android仿微信二维码和条形码,包括了Android仿微信二维码和条形码的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android仿微信二维码和条形码的具体代码,供大家参考,具体内容如下 图片美工做下处理。貌似需要做一个描边。png透明背景  在加两个方法 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍使用python写的opencv实时监测和解析二维码和条形码,包括了使用python写的opencv实时监测和解析二维码和条形码的使用技巧和注意事项,需要的朋友参考一下 今天,我实现了一个很有趣的demo,它可以在视频里找到并解析二维码,然后把解析的内容实时在屏幕上显示出来。 然后我们直入主题,首先你得确保你装了opencv,python,zbar等环境。然后这个教程对于学过open

  • 本文向大家介绍Android生成条形码和二维码功能,包括了Android生成条形码和二维码功能的使用技巧和注意事项,需要的朋友参考一下 背景:         随着移动互联网的普及以及智能终端设备的广泛应用,移动支付变得越来越便捷,通过扫描二维码代替传统的刷卡行为。那么作为开发者而言生成二维码成为了一项必备技能。 准备:         使用zxing包         implementatio

  • 本文向大家介绍Android中google Zxing实现二维码与条形码扫描,包括了Android中google Zxing实现二维码与条形码扫描的使用技巧和注意事项,需要的朋友参考一下 Android中google Zxing实现二维码与条形码扫描 了解二维码这个东西还是从微信中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从一张图片中扫一下竟然能直接加好友,不可思议啊,那时候还不了解二维码,

  • 本文向大家介绍iOS 条码及二维码扫描(从相册中读取条形码/二维码)及扫码过程中遇到的坑,包括了iOS 条码及二维码扫描(从相册中读取条形码/二维码)及扫码过程中遇到的坑的使用技巧和注意事项,需要的朋友参考一下 文章重点介绍如何解决,从手机相册中读取条形码和二维码的问题 1.扫码. 网上有特别的关于iOS扫码的代码和示例,其中扫码主要使用的是自带的AVFoundation类.这里就不细说了,要注意

  • 本文向大家介绍微信小程序 二维码canvas绘制实例详解,包括了微信小程序 二维码canvas绘制实例详解的使用技巧和注意事项,需要的朋友参考一下 微信小程序 二维码canvas绘制 上面直接放在一个js中吧方法暴露出来就可以了,顺便说一下关于 样式的问题,因为没必要再去写一篇了,样式:padding , 以前在html页面上我有时候习惯padding:0px,这样设置为0,但是在小程序中写成pa