CikeyQi's picture
Upload 964 files (#1)
346533a
raw
history blame
1 kB
import random
from pathlib import Path
from typing import List
from pil_utils import BuildImage
from pydantic import Field
from meme_generator import MemeArgsModel, MemeArgsParser, MemeArgsType, add_meme
img_dir = Path(__file__).parent / "images"
help = "图片编号,范围为 1~92"
parser = MemeArgsParser()
parser.add_argument("-n", "--number", type=int, default=0, help=help)
class Model(MemeArgsModel):
number: int = Field(0, description=help)
def crawl(images: List[BuildImage], texts: List[str], args: Model):
total_num = 92
if 1 <= args.number <= total_num:
num = args.number
else:
num = random.randint(1, total_num)
img = images[0].convert("RGBA").circle().resize((100, 100))
frame = BuildImage.open(img_dir / f"{num:02d}.jpg")
frame.paste(img, (0, 400), alpha=True)
return frame.save_jpg()
add_meme(
"crawl",
crawl,
min_images=1,
max_images=1,
args_type=MemeArgsType(parser, Model),
keywords=["爬"],
)