AItool commited on
Commit
5964a73
·
verified ·
1 Parent(s): a0adc13

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -4
app.py CHANGED
@@ -115,15 +115,34 @@ async def upload_file(file: UploadFile = File(...)):
115
  img = Image.open(BytesIO(contents)).convert("RGB")
116
  squared_img = fill_square_cropper(img)
117
 
118
- # Save the squared image
119
  output = BytesIO()
120
  squared_img.save(output, format="JPEG")
121
  output.seek(0)
122
 
123
- # Return base64-encoded image
124
- encoded_img = base64.b64encode(output.getvalue()).decode("utf-8")
 
 
 
 
 
 
 
 
 
 
 
 
125
  return HTMLResponse(
126
- content=f"<h3>Image successfully squared!</h3><img src='data:image/jpeg;base64,{encoded_img}' />",
 
 
 
 
 
 
 
127
  media_type="text/html"
128
  )
129
  except Exception as e:
 
115
  img = Image.open(BytesIO(contents)).convert("RGB")
116
  squared_img = fill_square_cropper(img)
117
 
118
+ # Save the squared image (original size)
119
  output = BytesIO()
120
  squared_img.save(output, format="JPEG")
121
  output.seek(0)
122
 
123
+ # Encode the full-size image for download
124
+ full_size_encoded_img = base64.b64encode(output.getvalue()).decode("utf-8")
125
+
126
+ # Resize the image for display (512px by 512px)
127
+ display_img = squared_img.copy()
128
+ display_img.thumbnail((512, 512)) # Resize for display
129
+ display_output = BytesIO()
130
+ display_img.save(display_output, format="JPEG")
131
+ display_output.seek(0)
132
+
133
+ # Encode the resized display image
134
+ display_encoded_img = base64.b64encode(display_output.getvalue()).decode("utf-8")
135
+
136
+ # Return the HTML response
137
  return HTMLResponse(
138
+ content=f"""
139
+ <h3>Image successfully squared!</h3>
140
+ <img src='data:image/jpeg;base64,{display_encoded_img}' width="512" height="512" />
141
+ <br/>
142
+ <a href="data:image/jpeg;base64,{full_size_encoded_img}" download="squared_image.jpg">
143
+ <button>Download Full-Size Image</button>
144
+ </a>
145
+ """,
146
  media_type="text/html"
147
  )
148
  except Exception as e: