Major_Project_1 / app.py
keertan2610's picture
Update app.py
a3ba09b verified
raw
history blame
784 Bytes
from fastapi import FastAPI, Form
from fastapi.responses import StreamingResponse
from PIL import Image, ImageDraw, ImageFont
import io
app = FastAPI()
@app.get("/")
def greet_json():
return {"Hello": "World!"}
@app.post("/generate-image")
async def generate_image(text: str = Form(...)):
# Create a blank image
image = Image.new('RGB', (512, 256), color=(73, 109, 137))
draw = ImageDraw.Draw(image)
# Use a default font
try:
font = ImageFont.truetype("arial.ttf", 30)
except:
font = ImageFont.load_default()
draw.text((10, 100), text, fill=(255, 255, 255), font=font)
# Convert image to bytes
buf = io.BytesIO()
image.save(buf, format="PNG")
buf.seek(0)
return StreamingResponse(buf, media_type="image/png")