background local helper script
This commit is contained in:
parent
b8011837e9
commit
bfd1ecabeb
39
background.py
Normal file
39
background.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
import random
|
||||||
|
import json
|
||||||
|
|
||||||
|
from main import make_wallpaper
|
||||||
|
|
||||||
|
palettes = [
|
||||||
|
{"colours": ["#eee4ab", "#e5cb9f", "#99c4c8", "#68a7ad"], "votes": 100000},
|
||||||
|
{"colours": ["#e4d192", "#cba0ae", "#af7ab3", "#80558c"], "votes": 100000},
|
||||||
|
{"colours": ["#eeeeee", "#e1d4bb", "#cbb279", "#537188"], "votes": 100000},
|
||||||
|
{"colours": ["#c0dbea", "#ba90c6", "#e8a0bf", "#fdf4f5"], "votes": 100000},
|
||||||
|
{"colours": ["#f5ffc9", "#b3e5be", "#a86464", "#804674"], "votes": 100000},
|
||||||
|
{"colours": ["#ffde7d", "#f6416c", "#f8f3d4", "#00b8a9"], "votes": 100000},
|
||||||
|
{"colours": ["#53354a", "#903749", "#e84545", "#2b2e4a"], "votes": 100000},
|
||||||
|
{"colours": ["#967e76", "#d7c0ae", "#eee3cb", "#b7c4cf"], "votes": 100000},
|
||||||
|
{"colours": ["#fc5185", "#f5f5f5", "#3fc1c9", "#364f6b"], "votes": 100000},
|
||||||
|
{"colours": ["#eaeaea", "#ff2e63", "#252a34", "#08d9d6"], "votes": 100000},
|
||||||
|
{"colours": ["#eeeeee", "#00adb5", "#393e46", "#222831"], "votes": 100000},
|
||||||
|
{"colours": ["#2cd3e1", "#a459d1", "#f266ab", "#ffb84c"], "votes": 100000},
|
||||||
|
{"colours": ["#ffe194", "#e8f6ef", "#1b9c85", "#4c4c6d"], "votes": 100000},
|
||||||
|
{"colours": ["#146c94", "#19a7ce", "#b0daff", "#feff86"], "votes": 100000},
|
||||||
|
{"colours": ["#4c3d3d", "#c07f00", "#ffd95a", "#fff7d4"], "votes": 100000},
|
||||||
|
{"colours": ["#8bacaa", "#b04759", "#e76161", "#f99b7d"], "votes": 100000},
|
||||||
|
{"colours": ["#146c94", "#19a7ce", "#afd3e2", "#f6f1f1"], "votes": 100000},
|
||||||
|
{"colours": ["#9ba4b5", "#212a3e", "#394867", "#f1f6f9"], "votes": 100000},
|
||||||
|
{"colours": ["#00ffca", "#05bfdb", "#088395", "#0a4d68"], "votes": 100000},
|
||||||
|
{"colours": ["#7c9070", "#9ca777", "#fee8b0", "#f97b22"], "votes": 100000},
|
||||||
|
{"colours": ["#002a19", "#000000", "#ffffff", "#e0512f"], "votes": 100000},
|
||||||
|
]
|
||||||
|
with open("popular.json", "r") as f:
|
||||||
|
palettes += json.load(f)
|
||||||
|
|
||||||
|
palette = random.choice(palettes)
|
||||||
|
colours = ["black"] + palette["colours"]
|
||||||
|
with open("current_speckles.png", "wb") as f:
|
||||||
|
b = make_wallpaper(
|
||||||
|
",".join(colours), fileformat="png", size=2.1, density=0.3, local=True
|
||||||
|
)
|
||||||
|
# for body in b.body_iterator:
|
||||||
|
# print(body)
|
16
main.py
16
main.py
@ -1,17 +1,12 @@
|
|||||||
import io
|
import io
|
||||||
import logging
|
|
||||||
import itertools
|
import itertools
|
||||||
import json
|
import logging
|
||||||
import random
|
import random
|
||||||
from collections import Counter
|
|
||||||
from copy import deepcopy
|
|
||||||
from datetime import datetime
|
|
||||||
from pathlib import Path
|
|
||||||
|
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
import numpy as np
|
import numpy as np
|
||||||
import uvicorn
|
import uvicorn
|
||||||
from fastapi import FastAPI, Response
|
from fastapi import FastAPI
|
||||||
from fastapi.middleware.cors import CORSMiddleware
|
from fastapi.middleware.cors import CORSMiddleware
|
||||||
from fastapi.responses import StreamingResponse
|
from fastapi.responses import StreamingResponse
|
||||||
|
|
||||||
@ -48,6 +43,7 @@ def make_wallpaper(
|
|||||||
size: float | None = 3,
|
size: float | None = 3,
|
||||||
fileformat: str = "svg",
|
fileformat: str = "svg",
|
||||||
orientation: str | None = "landscape",
|
orientation: str | None = "landscape",
|
||||||
|
local: bool = False,
|
||||||
):
|
):
|
||||||
if not fileformat in MEDIA_TYPES:
|
if not fileformat in MEDIA_TYPES:
|
||||||
return
|
return
|
||||||
@ -103,6 +99,12 @@ def make_wallpaper(
|
|||||||
pad_inches=0,
|
pad_inches=0,
|
||||||
)
|
)
|
||||||
buf.seek(0)
|
buf.seek(0)
|
||||||
|
if local:
|
||||||
|
filename = f"speckles.{fileformat}"
|
||||||
|
with open(filename, "wb") as f:
|
||||||
|
f.write(buf.getbuffer())
|
||||||
|
return filename
|
||||||
|
else:
|
||||||
return StreamingResponse(content=buf, media_type=MEDIA_TYPES[fileformat])
|
return StreamingResponse(content=buf, media_type=MEDIA_TYPES[fileformat])
|
||||||
buf.close()
|
buf.close()
|
||||||
|
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
import itertools
|
import itertools
|
||||||
import json
|
import json
|
||||||
import random
|
import random
|
||||||
from collections import Counter
|
|
||||||
from datetime import datetime
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
|
Loading…
Reference in New Issue
Block a user