+
    ÂHàj¦  ã                  óº   € R t ^ RIHt ^RIHtHtHtHtHt Rt	]	'       d   ^ RI
HtHtHt ^RIHtHt  ! R R4      t ! R R	4      t ! R
 R4      t ! R R4      tR# )z]
(Experimental) WCK-style drawing interface operations

.. seealso:: :py:mod:`PIL.ImageDraw`
)Úannotations)ÚImageÚ
ImageColorÚ	ImageDrawÚ	ImageFontÚ	ImagePathF)ÚAnyÚAnyStrÚBinaryIO)ÚCoordsÚStrOrBytesPathc                  ó*   € ] tR t^%tRtRR R lltRtR# )ÚPenznStores an outline color and width.

:param color: The outline color.
:param width: The line width, in pixels.
c               ó(   € V ^8„  d   QhRRRRRRRR/# )é   ÚcolorÚstrÚwidthÚintÚopacityÚreturnÚNone© )Úformats   "Ú�/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/50f6b671e3f94b538e344231dfcb664f/venv/lib/python3.14/site-packages/PIL/ImageDraw2.pyÚ__annotate__ÚPen.__annotate__,   s(   € ÷ ñ ˜cð ¨#ð ¸Cð È$ñ ó    c                	óH   € \         P                  ! V4      V n        W n        R # ©N)r   Úgetrgbr   r   )Úselfr   r   r   s   &&&&r   Ú__init__ÚPen.__init__,   s   € Ü×&Ò& uÓ-ˆŒ
ØŽ
r   )r   r   N)é   éÿ   ©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r"   Ú__static_attributes__r   r   r   r   r   %   s   † ñ÷ó r   r   c                  ó*   € ] tR t^1tRtRR R lltRtR# )ÚBrushzStores a fill colorc               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r   r   r   r   r   r   )r   s   "r   r   ÚBrush.__annotate__4   s!   € ÷ .ñ .˜cð .¨Cð .¸$ñ .r   c                	ó<   € \         P                  ! V4      V n        R # r   )r   r    r   )r!   r   r   s   &&&r   r"   ÚBrush.__init__4   s   € Ü×&Ò& uÓ-ˆŽ
r   )r   N)r%   r&   r   r   r   r.   r.   1   s   † Ù÷.ó .r   r.   c                  ó*   € ] tR t^8tRtRR R lltRtR# )ÚFontz Stores a TrueType font and colorc               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r   r   ÚfilezStrOrBytesPath | BinaryIOÚsizeÚfloatr   r   r   )r   s   "r   r   ÚFont.__annotate__;   s,   € ÷ 3ñ 3Øð3Ø 9ð3ØAFð3à	ñ3r   c                	ór   € \         P                  ! V4      V n        \        P                  ! W#4      V n        R # r   )r   r    r   r   ÚtruetypeÚfont)r!   r   r6   r7   s   &&&&r   r"   ÚFont.__init__;   s(   € ô  ×&Ò& uÓ-ˆŒ
Ü×&Ò& tÓ2ˆŽ	r   )r   r<   N)é   r&   r   r   r   r4   r4   8   s   † Ù*÷3ó 3r   r4   c                  óÊ   € ] tR t^CtRtR R R lltR R ltR!R R lltR	 R
 ltR R lt	R R lt
R R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltRtR# )"ÚDrawz,
(Experimental) WCK-style drawing interface
Nc               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   ÚimagezImage.Image | strr7   z"tuple[int, int] | list[int] | Noner   z&float | tuple[float, ...] | str | Noner   r   r   )r   s   "r   r   ÚDraw.__annotate__H   s8   € ÷ Vñ Và ðVð 1ðVð 6ð	Vð
 
ñVr   c                	óÒ   € \        V\        4      '       d)   Vf   Rp\        V4      h\        P                  ! WV4      p\
        P                  ! V4      V n        Wn        R V n	        R # )Nz>If image argument is mode string, size must be a list or tuple)
Ú
isinstancer   Ú
ValueErrorr   Únewr   r@   ÚdrawrB   Ú	transform)r!   rB   r7   r   Úmsgs   &&&& r   r"   ÚDraw.__init__H   sQ   € ô �eœS×!Ò!ØŠ|ØV�Ü  “oÐ%Ü—I’I˜e¨5Ó1ˆEÜ—N’N 5Ó)ˆŒ	ØŒ
ØQUˆŽr   c               ó   € V ^8„  d   QhRR/# )r   r   zImage.Imager   )r   s   "r   r   rC   W   s   € ÷ ñ �{ñ r   c                	ó   € V P                   # r   )rB   )r!   s   &r   ÚflushÚ
Draw.flushW   s   € Ø�z‰zÐr   c               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r   Úopr   Úxyr   ÚpenúPen | Brush | NoneÚbrushzBrush | Pen | NoneÚkwargsr   r   r   r   )r   s   "r   r   rC   Z   sF   € ÷ !-ñ !-àð!-ð ð!-ð  ð	!-ð
 "ð!-ð ð!-ð 
ñ!-r   c                	ó¸  € R ;rg^p\        V\        4      '       d   VP                  pVP                  pM.\        V\        4      '       d   VP                  pVP                  p\        V\        4      '       d   VP                  pM"\        V\        4      '       d   VP                  pV P
                  '       d4   \        P                  ! V4      p	V	P                  V P
                  4       T	pVR9   d   VP                  RV4       M$VP                  RV4       VP                  RV4       VP                  RV4       \        V P                  V4      ! V3/ VB  R # )NÚfillÚoutliner   )ÚarcÚline)rE   r   r   r   r.   rI   r   ÚPathÚ
setdefaultÚgetattrrH   )
r!   rQ   rR   rS   rU   rV   rY   rX   r   Úpaths
   &&&&&,    r   ÚrenderÚDraw.renderZ   s  € ð ÐˆØˆÜ�cœ3×ÒØ—i‘iˆGØ—I‘I‰EÜ˜œs×#Ò#Ø—k‘kˆGØ—K‘KˆEÜ�eœU×#Ò#Ø—;‘;‰DÜ˜œU×#Ò#Ø—9‘9ˆDà�>�>ˆ>Ü—>’> "Ó%ˆDØ�N‰N˜4Ÿ>™>Ô*ØˆBà�Ô Ø×Ñ˜f gÕ.à×Ñ˜f dÔ+Ø×Ñ˜i¨Ô1Ø×Ñ˜' 5Ô)Ü�—	‘	˜2Ô˜rÑ, VÔ,r   c               ó    € V ^8„  d   QhRRRR/# )r   Úoffsetútuple[float, float]r   r   r   )r   s   "r   r   rC   }   s   € ÷ 8ñ 8Ð#6ð 8¸4ñ 8r   c                ó(   € Vw  r#^^ V^ ^V3V n         R# )zSets a transformation offset.N)rI   )r!   rc   ÚxoffsetÚyoffsets   &&  r   ÚsettransformÚDraw.settransform}   s   € à!ÑˆØ˜Q ¨¨A¨wÐ7ˆŽr   c               ó0   € V ^8„  d   QhRRRRRRRRRR	R
R/# ©r   rR   r   rS   rT   Ústartr8   ÚendÚoptionsr   r   r   r   )r   s   "r   r   rC   ‚   sN   € ÷ Dñ DàðDð  ðDð ð	Dð
 ðDð ðDð 
ñDr   c                ó8   € V P                   ! RW.VO5RVRV/  R# )z¤
Draws an arc (a portion of a circle outline) between the start and end
angles, inside the given bounding box.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.arc`
rZ   rl   rm   N©r`   ©r!   rR   rS   rl   rm   rn   s   &&&&&*r   rZ   ÚDraw.arc‚   s!   € ð 	�Š�E˜2ÐC WÒC°EÐC¸sÔCr   c               ó0   € V ^8„  d   QhRRRRRRRRRR	R
R/# rk   r   )r   s   "r   r   rC   ’   sN   € ÷ Fñ FàðFð  ðFð ð	Fð
 ðFð ðFð 
ñFr   c                ó8   € V P                   ! RW.VO5RVRV/  R# )z—
Same as :py:meth:`~PIL.ImageDraw2.Draw.arc`, but connects the end points
with a straight line.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.chord`
Úchordrl   rm   Nrp   rq   s   &&&&&*r   ru   Ú
Draw.chord’   s!   € ð 	�Š�G˜RÐE wÒE°eÐEÀÔEr   c               ó(   € V ^8„  d   QhRRRRRRRR/# ©	r   rR   r   rS   rT   rn   r   r   r   r   )r   s   "r   r   rC   ¢   s)   € ÷ 2ñ 2˜&ð 2Ð'9ð 2ÀSð 2ÈTñ 2r   c                ó0   € V P                   ! RW.VO5!   R# )zj
Draws an ellipse inside the given bounding box.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.ellipse`
ÚellipseNrp   ©r!   rR   rS   rn   s   &&&*r   rz   ÚDraw.ellipse¢   s   € ð 	�Š�I˜rÐ1¨Ö1r   c               ó(   € V ^8„  d   QhRRRRRRRR/# rx   r   )r   s   "r   r   rC   ª   s)   € ÷ /ñ /�vð /Ð$6ð /À#ð /È$ñ /r   c                ó0   € V P                   ! RW.VO5!   R# )zp
Draws a line between the coordinates in the ``xy`` list.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.line`
r[   Nrp   r{   s   &&&*r   r[   Ú	Draw.lineª   s   € ð 	�Š�F˜BÐ. gÖ.r   c               ó0   € V ^8„  d   QhRRRRRRRRRR	R
R/# rk   r   )r   s   "r   r   rC   ²   sN   € ÷ Iñ IàðIð  ðIð ð	Ið
 ðIð ðIð 
ñIr   c                ó8   € V P                   ! RW.VO5RVRV/  R# )z¡
Same as arc, but also draws straight lines between the end points and the
center of the bounding box.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.pieslice`
Úpieslicerl   rm   Nrp   rq   s   &&&&&*r   r‚   ÚDraw.pieslice²   s!   € ð 	�Š�J ÐH¨'ÒH¸ÐHÀCÔHr   c               ó(   € V ^8„  d   QhRRRRRRRR/# rx   r   )r   s   "r   r   rC   Â   s)   € ÷ 2ñ 2˜&ð 2Ð'9ð 2ÀSð 2ÈTñ 2r   c                ó0   € V P                   ! RW.VO5!   R# )zÛ
Draws a polygon.

The polygon outline consists of straight lines between the given
coordinates, plus a straight line between the last and the first
coordinate.


.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.polygon`
ÚpolygonNrp   r{   s   &&&*r   r†   ÚDraw.polygonÂ   s   € ð 	�Š�I˜rÐ1¨Ö1r   c               ó(   € V ^8„  d   QhRRRRRRRR/# rx   r   )r   s   "r   r   rC   Ï   s)   € ÷ 4ñ 4˜Fð 4Ð);ð 4Àsð 4Ètñ 4r   c                ó0   € V P                   ! RW.VO5!   R# )zO
Draws a rectangle.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.rectangle`
Ú	rectangleNrp   r{   s   &&&*r   rŠ   ÚDraw.rectangleÏ   s   € ð 	�Š�K Ð3¨7Ö3r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   rR   rd   Útextr	   r<   r4   r   r   r   )r   s   "r   r   rC   ×   s/   € ÷ 
Bñ 
BÐ*ð 
B°&ð 
BÀð 
BÈñ 
Br   c                óô   € V P                   '       d4   \        P                  ! V4      pVP                  V P                   4       TpV P                  P	                  WVP
                  VP                  R7       R# )z_
Draws the string at the given position.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.text`
)r<   rX   N)rI   r   r\   rH   r�   r<   r   ©r!   rR   r�   r<   r_   s   &&&& r   r�   Ú	Draw.text×   sN   € ð �>�>ˆ>Ü—>’> "Ó%ˆDØ�N‰N˜4Ÿ>™>Ô*ØˆBØ�	‰	�‰�r d§i¡i°d·j±jˆÖAr   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   rR   rd   r�   r	   r<   r4   r   z!tuple[float, float, float, float]r   )r   s   "r   r   rC   ã   s,   € ÷ <ñ <Ø%ð<Ø-3ð<Ø;?ð<à	*ñ<r   c                óÚ   € V P                   '       d4   \        P                  ! V4      pVP                  V P                   4       TpV P                  P	                  WVP
                  R7      # )z¡
Returns bounding box (in pixels) of given text.

:return: ``(left, top, right, bottom)`` bounding box

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.textbbox`
©r<   )rI   r   r\   rH   Útextbboxr<   r�   s   &&&& r   r”   ÚDraw.textbboxã   sN   € ð �>�>ˆ>Ü—>’> "Ó%ˆDØ�N‰N˜4Ÿ>™>Ô*ØˆBØ�y‰y×!Ñ! "°·±Ð!Ó;Ð;r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r�   r	   r<   r4   r   r8   r   )r   s   "r   r   rC   ó   s!   € ÷ :ñ :˜vð :¨Tð :°eñ :r   c                óN   € V P                   P                  WP                  R7      # )z¤
Returns length (in pixels) of given text.
This is the amount by which following text should be offset.

.. seealso:: :py:meth:`PIL.ImageDraw.ImageDraw.textlength`
r“   )rH   Ú
textlengthr<   )r!   r�   r<   s   &&&r   r˜   ÚDraw.textlengthó   s    € ð �y‰y×#Ñ# D¯y©yÐ#Ó9Ð9r   )rH   rB   rI   )NNr   )r'   r(   r)   r*   r+   r"   rN   r`   rh   rZ   ru   rz   r[   r‚   r†   rŠ   r�   r”   r˜   r,   r   r   r   r@   r@   C   sX   † ñ÷Võ÷!-õF8õ
Dõ Fõ 2õ/õIõ 2õ4õ
Bõ<÷ :ñ :r   r@   N)r+   Ú
__future__r   Ú r   r   r   r   r   ÚTYPE_CHECKINGÚtypingr   r	   r
   Ú_typingr   r   r   r.   r4   r@   r   r   r   Ú<module>rŸ      sP   ðñ(õ #ç @Õ @à€ßß,Ñ,ç/÷	ñ 	÷.ñ .÷3ñ 3÷w:ó w:r   