Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung, wie Python QR-Codes aus Text generiert

Ausführliche Erklärung, wie Python QR-Codes aus Text generiert

巴扎黑
巴扎黑Original
2017-08-14 14:39:252873Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum Generieren von QR-Code aus Text in Python vorgestellt. Er analysiert die spezifischen Schritte und zugehörigen Implementierungstechniken von Python in Form eines vollständigen Beispiels.

Das Beispiel in diesem Artikel beschreibt, wie man in Python einen QR-Code aus Text generiert. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:


#coding:utf-8
'''
Python生成二维码 v1.0
主要将文本生成二维码图片
测试一:将文本生成白底黑字的二维码图片
测试二:将文本生成带logo的二维码图片
'''
__author__ = 'Xue'
import qrcode
from PIL import Image
import os
#生成二维码图片
def make_qr(str,save):
  qr=qrcode.QRCode(
    version=4, #生成二维码尺寸的大小 1-40 1:21*21(21+(n-1)*4)
    error_correction=qrcode.constants.ERROR_CORRECT_M, #L:7% M:15% Q:25% H:30%
    box_size=10, #每个格子的像素大小
    border=2, #边框的格子宽度大小
  )
  qr.add_data(str)
  qr.make(fit=True)
  img=qr.make_image()
  img.save(save)
#生成带logo的二维码图片
def make_logo_qr(str,logo,save):
  #参数配置
  qr=qrcode.QRCode(
    version=4,
    error_correction=qrcode.constants.ERROR_CORRECT_Q,
    box_size=8,
    border=2
  )
  #添加转换内容
  qr.add_data(str)
  #
  qr.make(fit=True)
  #生成二维码
  img=qr.make_image()
  #
  img=img.convert("RGBA")
  #添加logo
  if logo and os.path.exists(logo):
    icon=Image.open(logo)
    #获取二维码图片的大小
    img_w,img_h=img.size
    factor=4
    size_w=int(img_w/factor)
    size_h=int(img_h/factor)
    #logo图片的大小不能超过二维码图片的1/4
    icon_w,icon_h=icon.size
    if icon_w>size_w:
      icon_w=size_w
    if icon_h>size_h:
      icon_h=size_h
    icon=icon.resize((icon_w,icon_h),Image.ANTIALIAS)
    #计算logo在二维码图中的位置
    w=int((img_w-icon_w)/2)
    h=int((img_h-icon_h)/2)
    icon=icon.convert("RGBA")
    img.paste(icon,(w,h),icon)
  #保存处理后图片
  img.save(save)
if __name__=='__main__':
  save_path='theqrcode.png' #生成后的保存文件
  logo='logo.jpg' #logo图片
  str=raw_input('请输入要生成二维码的文本内容:')
  #make_qr(str)
  make_logo_qr(str,logo,save_path)

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung, wie Python QR-Codes aus Text generiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn