Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
|
@@ -14,13 +14,24 @@ def generate_qr_image(url, image_size):
|
|
| 14 |
qr = qrcode.QRCode(
|
| 15 |
version=1,
|
| 16 |
error_correction=qrcode.constants.ERROR_CORRECT_L,
|
| 17 |
-
box_size=50,
|
| 18 |
-
border=4,
|
| 19 |
)
|
| 20 |
qr.add_data(url)
|
| 21 |
qr.make(fit=True)
|
| 22 |
|
| 23 |
-
qr_img = qr.make_image(fill_color=
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
qr_img = qr_img.resize(image_size)
|
| 25 |
|
| 26 |
return qr_img
|
|
@@ -40,7 +51,7 @@ def generate_image(url, text):
|
|
| 40 |
api_image = Image.open(io.BytesIO(image_bytes))
|
| 41 |
|
| 42 |
# Generate QR code image
|
| 43 |
-
qr_image = generate_qr_image(url,
|
| 44 |
|
| 45 |
# Create a blank image with transparency
|
| 46 |
final_image = Image.new('RGBA', api_image.size, (255, 255, 255, 0))
|
|
|
|
| 14 |
qr = qrcode.QRCode(
|
| 15 |
version=1,
|
| 16 |
error_correction=qrcode.constants.ERROR_CORRECT_L,
|
| 17 |
+
box_size=50, # Set a default box size
|
| 18 |
+
border=4, # Set a default border size
|
| 19 |
)
|
| 20 |
qr.add_data(url)
|
| 21 |
qr.make(fit=True)
|
| 22 |
|
| 23 |
+
qr_img = qr.make_image(fill_color="black", back_color="white").convert("RGBA")
|
| 24 |
+
|
| 25 |
+
# Convert black color pixels to transparent
|
| 26 |
+
data = qr_img.getdata()
|
| 27 |
+
new_data = []
|
| 28 |
+
for item in data:
|
| 29 |
+
if item[:3] == (0, 0, 0): # Change black pixels to transparent
|
| 30 |
+
new_data.append((0, 0, 0, 0))
|
| 31 |
+
else:
|
| 32 |
+
new_data.append(item)
|
| 33 |
+
qr_img.putdata(new_data)
|
| 34 |
+
|
| 35 |
qr_img = qr_img.resize(image_size)
|
| 36 |
|
| 37 |
return qr_img
|
|
|
|
| 51 |
api_image = Image.open(io.BytesIO(image_bytes))
|
| 52 |
|
| 53 |
# Generate QR code image
|
| 54 |
+
qr_image = generate_qr_image(url, api_image.size)
|
| 55 |
|
| 56 |
# Create a blank image with transparency
|
| 57 |
final_image = Image.new('RGBA', api_image.size, (255, 255, 255, 0))
|