
    Si                    8   d Z ddlmZ ddlmZ ddlmZ ddlmZ  ee	      j                  Zedz  Zedz  dz  Zed	z  Zed
z  Zedz  ZddlZej$                  j'                  d ee             ddlmZmZ ddlmZmZ ddlmZmZ ddZ d Z!e"dk(  r e!        yy)u   M3 FAIL 배너 재렌더링 스크립트 (6장)
수정된 HTML 템플릿으로 기존 배경 이미지를 사용하여 재렌더링합니다.
배경 이미지는 재생성하지 않습니다.
    )annotations)Path)sync_playwright)WORKSPACE_ROOTzoutput/google-ads/banners/m3outputz	v4-hybridzbg_m3_1.jpgzbg_m3_2.jpgzbg_m3_3.jpgN)make_html_1200x628make_html_1080x1080c           
        t         d| d| d| dz  }|j                  | d       	 t               5 }|j                  j	                  ddg	      }	 |j                  ||d
      }|j                  d|j                          d       |j                  d       |j                  j                  dd       |j                  t        |      ddd||d       |j                         j                  dz  }	t        d|j                    d|	dd       |j#                          	 ddd       |j%                  d       y# |j#                          w xY w# 1 sw Y   1xY w# |j%                  d       w xY w)u+   HTML 문자열을 Playwright로 PNG 캡처.
_rerender__xz.htmlzutf-8)encodingz--no-sandboxz--disable-gpu)args)widthheight)viewportzfile://networkidle)
wait_untili  T)parentsexist_okpngr   )r   yr   r   )pathtypeclip   z  [OK] z  (.0fz KB)N)
missing_ok)TMP_DIR
write_textr   chromiumlaunchnew_pagegotoresolvewait_for_timeoutparentmkdir
screenshotstrstatst_sizeprintnamecloseunlink)
htmlout_pathwhtagtmppbpgsize_kbs
             O/home/jay/workspace/.worktrees/task-2117-dev1/tools/ai-image-gen/rerender_m3.pycapturer<   "   s^   
jQqc1#U3
3CNN4'N*$ 	!

!!'H!IAZZ1)BZC'#++-1mL##D)%%dT%BX q1B  
 #--/11D8c'#dCD		" 	

d
# 		 	" 	

d
#s;   
E" ECEE&E" EEEE" "E6c                    t        d       t        d       t        d       t        t        ddddft        t        ddddft        t
        d	ddd
ft        t
        dddd
ft        t        ddddft        t        ddddfg} g }| D ]  \  }}}}}}t        |z  }t        d| d       |j                         s#t        d|        |j                  |ddf       U	  ||      }	t        |	||||       |j                  |d|j                         j                  dz  ddf        t        d       t        d       t        d       d}|D ](  \  }}}|rdnd}t        d| d| d |        |s$|d!z  }* t        d"| d#t%        |        d$       t        d%t               y # t         $ r6}
t        d|
        |j                  |dt#        |
      f       Y d }
~
Xd }
~
ww xY w)&Nz<============================================================u$   M3 배너 재렌더링 시작 (6장)zm3-1-1200x628.pngi  it  m3_1zm3-1-1080x1080.pngi8  zm3-2-1200x628.pngm3_2zm3-2-1080x1080.pngzm3-3-1200x628.pngm3_3zm3-3-1080x1080.pngz
[u   ] 렌더링 중...u$     [경고] 배경 이미지 없음: Fu   배경 없음Tr   r   z KBu     [오류] z=
============================================================u   재렌더링 완료 요약r   SUCCESSFAILz  [z] z     u   
총 /u
   장 성공u   출력 경로:)r-   	m3_1_1200BG_M3_1	m3_1_1080	m3_2_1200BG_M3_2	m3_2_1080	m3_3_1200BG_M3_3	m3_3_1080
OUTPUT_DIRexistsappendr<   r+   r,   	Exceptionr*   len)tasksresults	html_funcbg_pathfilenamer3   r4   r5   r2   r1   esuccessfnameokinfostatuss                   r;   mainr^   =   s   	(O	
01	(O 
G04#vF	G14vF	G04#vF	G14vF	G04#vF	G14vFE G38 6/	7HaC(H:/01~~8	BCNNHe_=>	6W%DD(Aq#.NNHdx}}/F/Ft/KC.PPS,TUV6 
/	
&'	(OG" r4 fF82eWBtf-.qLG	
 
F7)1SZL

34	
J'  	6Ks#$NNHeSV455	6s   A
F  	G)+GG__main__)r1   r*   r2   r   r3   intr4   r`   r5   r*   returnNone)#__doc__
__future__r   pathlibr   playwright.sync_apir   
gen_configr   __file__r'   BASE_DIRrN   r   rF   rI   rL   sysr   insertr*   gen_m3_1_bannersr   rE   r	   rG   gen_m3_2_bannersrH   rJ   gen_m3_3_bannersrK   rM   r<   r^   __name__     r;   <module>rr      s   
 #  / % >  <<

X

+
M
!
M
!
M
!  3x= ! ^ ^ ^
$6)(X zF rq   