¿Cómo generar códigos QR con un logotipo personalizado usando Python?

En este artículo, discutiremos cómo generar un código QR con una imagen en el centro. Vamos a generar un código QR de cualquier texto, enlace, etc., y colocaremos una imagen en el centro de ese código QR de modo que represente un código QR de marca.

Módulos Requeridos:

  • Pillow : es una herramienta ligera de procesamiento de imágenes que ayuda a editar, crear y guardar imágenes. Pillow admite muchos formatos de archivo de imagen, incluidos BMP, PNG, JPEG y TIFF. Se puede instalar usando el siguiente comando:
pip install Pillow
  • QRcode: Es una biblioteca externa de python utilizada para generar códigos QR. Se puede instalar usando el siguiente comando:
pip install qrcode

Imagen utilizada:

Python3

# import modules
import qrcode
from PIL import Image
 
# taking image which user wants
# in the QR code center
Logo_link = 'g4g.jpg'
 
logo = Image.open(Logo_link)
 
# taking base width
basewidth = 100
 
# adjust image size
wpercent = (basewidth/float(logo.size[0]))
hsize = int((float(logo.size[1])*float(wpercent)))
logo = logo.resize((basewidth, hsize), Image.ANTIALIAS)
QRcode = qrcode.QRCode(
    error_correction=qrcode.constants.ERROR_CORRECT_H
)
 
# taking url or text
url = 'https://www.geeksforgeeks.org/'
 
# adding URL or text to QRcode
QRcode.add_data(url)
 
# generating QR code
QRcode.make()
 
# taking color name from user
QRcolor = 'Green'
 
# adding color to QR code
QRimg = QRcode.make_image(
    fill_color=QRcolor, back_color="white").convert('RGB')
 
# set size of QR code
pos = ((QRimg.size[0] - logo.size[0]) // 2,
       (QRimg.size[1] - logo.size[1]) // 2)
QRimg.paste(logo, pos)
 
# save the QR code generated
QRimg.save('gfg_QR.png')
 
print('QR code generated!')

Producción:

QR code generated!

Código QR:

Explicación:

  • Cuando ejecute el programa, tomará la imagen de entrada y el ancho base. Después de eso, la imagen cambiará de forma y se creará un objeto QRcode .
  • Usando el objeto QRcode , se asignarán varios atributos, como datos o URL, se vincularán al código QR usando el método add_data() , el color del código QR se asignará usando el método make_image() y la imagen reformada se colocará en el Código QR utilizando el método paste() .
  • Finalmente, el código QR generado se guardará en una ubicación determinada utilizando el método save() .

Publicación traducida automáticamente

Artículo escrito por pavanpatel3684 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *