Spaces:
Running
Running
File size: 943 Bytes
9f8673a b75b0f8 9f8673a b75b0f8 9f8673a b75b0f8 9f8673a b75b0f8 9f8673a b75b0f8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
import qrcode
import gradio as gr
from io import BytesIO
def generate_qr(url):
"""Generates a QR code from a given URL and returns the image and download link."""
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4
)
qr.add_data(url)
qr.make(fit=True)
img = qr.make_image(fill="black", back_color="white")
# Save to BytesIO for download
img_io = BytesIO()
img.save(img_io, format="PNG")
img_io.seek(0)
# Ensure file remains open when accessed
return img, ("qr_code.png", img_io.getvalue())
iface = gr.Interface(
fn=generate_qr,
inputs=gr.Textbox(label="Enter URL"),
outputs=[
gr.Image(label="Generated QR Code"),
gr.File(label="Download QR Code")
],
title="QR Code Generator",
description="Enter a URL to generate and download a QR Code."
)
iface.launch()
|