#!/usr/bin/env python3
"""컨셉 #09 미니멀 타이포 - CSS only 렌더링 (배경 이미지 없음)"""

from pathlib import Path
from playwright.sync_api import sync_playwright

TEMPLATE_PATH = Path("/home/jay/workspace/output/meta-ads/concept-catalog/09-minimal-typography/template.html")
OUTPUT_PATH = Path("/home/jay/workspace/output/meta-ads/concept-catalog/09-minimal-typography/sample.png")

def render():
    with sync_playwright() as p:
        browser = p.chromium.launch()
        try:
            page = browser.new_page(viewport={"width": 1080, "height": 1080})
            template_url = f"file://{TEMPLATE_PATH.resolve()}"
            page.goto(template_url, wait_until="networkidle")

            # 폰트 로딩 대기
            page.evaluate("""async () => {
                await document.fonts.ready;
            }""")
            page.wait_for_timeout(2000)

            page.screenshot(
                path=str(OUTPUT_PATH),
                type="png",
                clip={"x": 0, "y": 0, "width": 1080, "height": 1080}
            )
            print(f"[완료] {OUTPUT_PATH}")
            size_kb = OUTPUT_PATH.stat().st_size / 1024
            print(f"[크기] {size_kb:.0f} KB")
        finally:
            browser.close()

if __name__ == "__main__":
    render()
