Ë
    ‹`g½	  ã                   óB   — d dl mZ d dlmZmZmZmZ  G d„ deee«      Zy)é    )ÚBaseElement)Ú	TransformÚ_vertÚ_horizÚClippingc                   ó6   ‡ — e Zd ZdZdZdˆ fd„	Zd„ Zdd„Zˆ xZS )ÚImagea%   The **image** element indicates that the contents of a complete file are
    to be rendered into a given rectangle within the current user coordinate
    system. The **image** element can refer to raster image files such as PNG
    or JPEG or to files with MIME type of "image/svg+xml".

    Úimagec                 ó€   •— t        t        | �
  d	i |¤Ž || d<   |�|d   | d<   |d   | d<   |�|d   | d<   |d   | d<   yy)
a1  
        :param string href: hyperlink to the image resource
        :param 2-tuple insert: insert point (**x**, **y**)
        :param 2-tuple size: (**width**, **height**)
        :param dict attribs: additional SVG attributes
        :param extra: additional SVG attributes as keyword-arguments
        z
xlink:hrefNr   Úxé   ÚyÚwidthÚheight© )Úsuperr	   Ú__init__)ÚselfÚhrefÚinsertÚsizeÚextraÚ	__class__s        €ú_/workspace/moltex-experiments/.pixi/envs/default/lib/python3.12/site-packages/svgwrite/image.pyr   zImage.__init__   sf   ø€ ô 	Œe�TÑ#Ñ, eÒ,Ø!ˆˆ\ÑØÐØ˜q™	ˆD�‰IØ˜q™	ˆD�‰IØÐØ  ™GˆD�‰MØ! !™WˆD�ŠNð ó    c                 ó   — d| d<   y)zh Stretch viewBox in x and y direction to fill viewport, does not
        preserve aspect ratio.
        ÚnoneÚpreserveAspectRatioNr   )r   s    r   ÚstretchzImage.stretch&   s   € ð '-ˆÐ"Ò#r   c                 óˆ   — | j                   r|dvrt        d|z  «      ‚t        |   ›t        |   ›d|›�| j                  d<   y)ai   Set the preserveAspectRatio attribute.

        :param string horiz: horizontal alignment ``'left'|'center'|'right'``
        :param string vert: vertical alignment ``'top'|'middle'|'bottom'``
        :param string scale: scale method ``'meet'|'slice'``

        ============= ===========
        Scale methods Description
        ============= ===========
        ``meet``      preserve aspect ration and zoom to limits of viewBox
        ``slice``     preserve aspect ration and viewBox touch viewport on all bounds, viewBox will extend beyond the bounds of the viewport
        ============= ===========

        )ÚmeetÚslicezInvalid scale parameter '%s'Ú r   N)ÚdebugÚ
ValueErrorr   r   Úattribs)r   ÚhorizÚvertÚscales       r   Úfitz	Image.fit,   sC   € ð �:Š:˜%Ð'8Ñ8ÜÐ;¸eÑCÓDÐDÜ;AÀ%º=ÌÈtËÑV[Ð.\ˆ�‰Ð*Ò+r   )NN)ÚcenterÚmiddler!   )	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úelementnamer   r   r*   Ú__classcell__)r   s   @r   r	   r	      s   ø„ ñð €Kõ%ò"-÷]r   r	   N)Úsvgwrite.baser   Úsvgwrite.mixinsr   r   r   r   r	   r   r   r   Ú<module>r5      s"   ðõ &ß >Ó >ô1]ˆK˜ Hõ 1]r   