Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| import qrcode | |
| from io import BytesIO | |
| from PIL import Image | |
| def generate_qr_code(data): | |
| qr = qrcode.QRCode( | |
| version=1, | |
| error_correction=qrcode.constants.ERROR_CORRECT_L, | |
| box_size=10, | |
| border=4, | |
| ) | |
| qr.add_data(data) | |
| qr.make(fit=True) | |
| img = qr.make_image(fill="black", back_color="white") | |
| return img | |
| st.title("QR Code Generator") | |
| # User input for QR code | |
| user_input = st.text_input("Enter text or URL:") | |
| if st.button("Generate QR Code"): | |
| if user_input: | |
| qr_img = generate_qr_code(user_input) | |
| # Convert PIL Image to Bytes | |
| buffer = BytesIO() | |
| qr_img.save(buffer, format="PNG") | |
| buffer.seek(0) | |
| img_bytes = buffer.getvalue() # Convert to bytes | |
| st.image(img_bytes, caption="Your QR Code", use_container_width=True) # Corrected input | |
| st.download_button( | |
| label="Download QR Code", | |
| data=buffer, | |
| file_name="qr_code.png", | |
| mime="image/png" | |
| ) | |
| else: | |
| st.warning("Please enter text or a URL to generate a QR code.") | |