File size: 959 Bytes
0ee98d2
 
 
 
 
 
 
 
a9f78b2
0ee98d2
 
 
 
 
 
 
 
a9f78b2
0ee98d2
 
a9f78b2
 
0ee98d2
a9f78b2
0ee98d2
f825b05
54c9b53
0ee98d2
 
a9f78b2
0ee98d2
 
 
 
5370854
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
import gradio as gr
import qrcode
from PIL import Image

def generate_qr(link):
    if link.strip() == "":
        return None

    # Create QR code object
    qr = qrcode.QRCode(
        version=1,
        box_size=10,
        border=5
    )
    qr.add_data(link)
    qr.make(fit=True)

    # Make the image (this is already a PIL image)
    img = qr.make_image(fill_color="black", back_color="white")

    # Ensure it's in RGB mode for Gradio
    img = img.convert("RGB")

    return img

with gr.Blocks(title="Raam's QR Code maker") as demo:
    gr.Markdown("### 🔳 Raam's QR Code maker\nEnter any link to generate a QR code instantly!")

    link_input = gr.Textbox(label="Enter URL", placeholder="https://example.com")
    output_image = gr.Image(label="Generated QR Code", type="pil")

    generate_btn = gr.Button("Generate QR Code")
    generate_btn.click(fn=generate_qr, inputs=link_input, outputs=output_image)

demo.launch(theme=gr.themes.Soft())