Ë
    ^ãj’  ã                  ó¾  — d dl mZ dhZddlmZmZ ddlmZ ddlm	Z
 ddlmZ dZerd d	lmZ dd
„Z G d„ dej"                  «      Zdd„Zdd„Z eej,                  d«      r" G d„ dej.                  «      Z e e«       «        ej2                  ej4                  ee«        ej6                  ej4                  e«        ej8                  ej4                  ddg«       y)é    )ÚannotationszPIL._binaryé   )ÚImageÚ	ImageFile)Úi16le)Úsi16le)Úsi32leF)ÚIOc                ó$   — | j                  d«      S )N)ó   ×ÍÆš  ó      )Ú
startswith)Úprefixs    úT/var/www/html/metafoliadorv2/venv/lib/python3.12/site-packages/PIL/WmfImagePlugin.pyÚ_acceptr   '   s   € Ø×ÑÐOÓPÐPó    c                  ó:   ‡ — e Zd ZdZdZdd„Z	 d	 	 	 dˆ fd„Zˆ xZS )ÚWmfStubImageFileÚWMFzWindows Metafilec                ó  — | j                   €J ‚| j                   j                  d«      }|j                  d«      r¿t        |d«      }|dk(  rd}t	        |«      ‚||f| _        t        |d«      }t        |d«      }t        |d«      }t        |d	«      }d
| j                  d<   ||z
  | j                  d   z  |z  ||z
  | j                  d   z  |z  f}||||f| j                  d<   |dd dk7  �rd}t        |«      ‚|j                  d«      rÛ|dd dk(  rÓt        |d«      }t        |d	«      }t        |d«      }t        |d«      }t        |d«      t        |d«      t        |d«      t        |d«      f}	||z
  ||z
  f}d||z
  z  |	d   |	d   z
  z  }
d||z
  z  |	d   |	d   z
  z  }||||f| j                  d<   |
|k(  r|
| j                  d<   n|
|f| j                  d<   |
|f| _        nd}t        |«      ‚d| _
        || _        y ) Né,   r   é   r   zInvalid inché   é   é
   é   éH   ÚdpiÚwmf_bboxé   é   s    	 zUnsupported WMF file formatr   é(   s    EMFé   é   é   é   é    é$   g     Ø£@é   é   r   zUnsupported file formatÚRGB)ÚfpÚreadr   ÚwordÚ
ValueErrorÚ_inchÚshortÚinfoÚSyntaxErrorÚ_longÚ_modeÚ_size)ÚselfÚsÚinchÚmsgÚx0Úy0Úx1Úy1ÚsizeÚframeÚxdpiÚydpis               r   Ú_openzWmfStubImageFile._open3   s=  € à�w‰wÐ"Ð"Ð"Ø�G‰G�L‰L˜Óˆà�<‰<Ð3Ô4ô ˜˜2“;ˆDØ�qŠyØ$�Ü  “oÐ%Ø.2°D¨jˆDŒJô �q˜!“ˆBÜ�q˜!“ˆBÜ�q˜"“ˆBÜ�q˜"“ˆBð  "ˆD�I‰I�eÑà�b‘˜DŸI™I eÑ,Ñ,°Ñ4Ø�b‘˜DŸI™I eÑ,Ñ,°Ñ4ðˆDð
 %'¨¨B° NˆD�I‰I�jÑ!ð ��BˆxÐ,Ó,Ø3�Ü! #Ó&Ð&à�\‰\Ð-Ô.°1°R¸°8¸wÒ3Fô �q˜!“ˆBÜ�q˜"“ˆBÜ�q˜"“ˆBÜ�q˜"“ˆBô ˜!˜R“L¤%¨¨2£,´°a¸³¼eÀAÀr»lÐJˆEà˜‘7˜B ™GÐ#ˆDð ˜R "™WÑ%¨¨q©°E¸!±HÑ)<Ñ=ˆDØ˜R "™WÑ%¨¨q©°E¸!±HÑ)<Ñ=ˆDà$&¨¨B° NˆD�I‰I�jÑ!à�tŠ|Ø#'�—	‘	˜%Ò à#'¨ :�—	‘	˜%Ñ Ø˜t˜ˆD�Jð ,ˆCÜ˜cÓ"Ð"àˆŒ
Øˆ�
r   c                ó¬  •— |�Ät        |t        «      r|n||f}t        d„ |D «       «      rd}t        |«      ‚|| j                  d<   | j                  d   \  }}}}t        ||z
  |d   z  | j                  d   z  «      t        ||z
  |d   z  | j                  d   z  «      f| _        t        j                  | j                  «       t        ‰| �1  «       S )Nc              3  ó&   K  — | ]	  }|d k  –— Œ y­w)r   N© )Ú.0Úvs     r   ú	<genexpr>z(WmfStubImageFile.load.<locals>.<genexpr>|   s   è ø€ Ò)˜Q�1�q•5Ñ)ùs   ‚zDPI must be non-negativer   r   r   r   )Ú
isinstanceÚtupleÚanyr/   r2   Úintr0   r6   r   Ú_decompression_bomb_checkr?   ÚsuperÚload)	r7   r   Úxy_dpir:   r;   r<   r=   r>   Ú	__class__s	           €r   rP   zWmfStubImageFile.loadw   sÌ   ø€ ð ˆ?Ü& s¬EÔ2‘S¸¸c¸
ˆFÜÑ) &Ô)Ô)Ø0�Ü  “oÐ%à"ˆD�I‰I�eÑØ!ŸY™Y zÑ2‰NˆB��B˜ä�R˜"‘W  q¡	Ñ)¨D¯J©J°q©MÑ9Ó:Ü�R˜"‘W  q¡	Ñ)¨D¯J©J°q©MÑ9Ó:ðˆDŒJô ×+Ñ+¨D¯I©IÔ6Ü‰w‰|‹~Ðr   )ÚreturnÚNone)N)r   z"float | tuple[float, float] | NonerS   zImage.core.PixelAccess | None)Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionrC   rP   Ú__classcell__)rR   s   @r   r   r   /   s4   ø„ Ø€FØ+ÐóBðJ 9=ðØ5ðà	&÷ñ r   r   c                ó´   — t         j                  �t        t         j                  d«      sd}t        |«      ‚t         j                  j	                  | ||«       y )NÚsavezWMF save handler not installed)r   Ú_handlerÚhasattrÚOSErrorr\   )Úimr,   Úfilenamer:   s       r   Ú_saverb   Š   sI   € Ü× Ñ Ð(´Ü×!Ñ! 6ô1ð /ˆÜ�c‹lÐÜ×Ñ×"Ñ" 2 r¨8Õ4r   c                ó   — | t         _        y)z^
    Install application-specific WMF image handler.

    :param handler: Handler object.
    N)r   r]   )Úhandlers    r   Úregister_handlerre   “   s   € ð !(ÔÕr   Údrawwmfc                  ó   — e Zd Zdd„Zdd„Zy)Ú
WmfHandlerc                ó,   — |j                   d   | _        y )Nr   )r2   Úbbox©r7   r`   s     r   ÚopenzWmfHandler.open    s   € ØŸ™ 
Ñ+ˆD�Ir   c           	     óÐ  — t        |j                  «      dk(  r t        j                  d|j                  «      S |j                  €J ‚|j                  j                  d«       t        j                  d|j                  t        j                  j                  |j                  j                  «       |j                  | j                  «      dd|j                  d   dz  dz   dz  d«      S )Nr   r+   ÚrawÚBGRr*   éüÿÿÿéÿÿÿÿ)Úminr?   r   Únewr,   ÚseekÚ	frombytesÚcorerf   r-   rj   rk   s     r   rP   zWmfHandler.load£   s«   € Ü�2—7‘7‹|˜qÒ Ü—y‘y ¨¯©Ó0Ð0Ø—5‘5Ð$Ð$Ð$Ø�E‰E�J‰J�qŒMÜ—?‘?ØØ—‘Ü—
‘
×"Ñ" 2§5¡5§:¡:£<°·±¸$¿)¹)ÓDØØØ—‘˜‘˜a‘ !Ñ# rÑ)Øóð r   N)r`   úImageFile.StubImageFilerS   rT   )r`   rw   rS   úImage.Image)rU   rV   rW   rl   rP   rF   r   r   rh   rh   Ÿ   s   „ ó	,ô	r   rh   z.wmfz.emfN)r   ÚbytesrS   Úbool)r`   rx   r,   z	IO[bytes]ra   zstr | bytesrS   rT   )rd   zImageFile.StubHandler | NonerS   rT   )Ú
__future__r   Ú__lazy_modules__Ú r   r   Ú_binaryr   r.   r   r1   r	   r4   ÚTYPE_CHECKINGÚtypingr
   r   ÚStubImageFiler   rb   re   r^   rv   ÚStubHandlerrh   Úregister_openrX   Úregister_saveÚregister_extensionsrF   r   r   ú<module>r†      sÑ   ðõ* #à!�?Ð ç Ý "Ý $Ý $à€ÙÝóQôX�y×.Ñ.ô Xóv5ó(ñ ˆ5�:‰:�yÔ!ô�Y×*Ñ*ô ñ& ‘Z“\Ô"ð €× Ñ Ð$×+Ñ+Ð-=¸wÔ GØ €× Ñ Ð$×+Ñ+¨UÔ 3à €× Ñ Ð*×1Ñ1°F¸FÐ3CÕ Dr   