
    zvg+                        d dl mZ ddlmZmZmZ  G d d          Z G d de          Z G d d	e          Z G d
 de          Z	 G d de          Z
dS )    )annotations   )ImageImageFilter	ImageStatc                  ,    e Zd ZU ded<   ded<   d	dZdS )
_EnhanceImage.Imageimage
degeneratefactorfloatreturnc                B    t          j        | j        | j        |          S )a  
        Returns an enhanced image.

        :param factor: A floating point value controlling the enhancement.
                       Factor 1.0 always returns a copy of the original image,
                       lower factors mean less color (brightness, contrast,
                       etc), and higher values more. There are no restrictions
                       on this value.
        :rtype: :py:class:`~PIL.Image.Image`
        )r   blendr   r   )selfr   s     M/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/PIL/ImageEnhance.pyenhancez_Enhance.enhance   s     {4?DJ???    N)r   r   r   r
   )__name__
__module____qualname____annotations__r    r   r   r	   r	      sH         @ @ @ @ @ @r   r	   c                      e Zd ZdZddZdS )	Colora  Adjust image color balance.

    This class can be used to adjust the colour balance of an image, in
    a manner similar to the controls on a colour TV set. An enhancement
    factor of 0.0 gives a black and white image. A factor of 1.0 gives
    the original image.
    r   r
   r   Nonec                    || _         d| _        d|                                v rd| _        | j        |j        k    r2|                    | j                                      |j                  }|| _        d S )NLALA)r   intermediate_modegetbandsmodeconvertr   r   r   s     r   __init__zColor.__init__4   sm    
!$%..""""%)D"!UZ//MM$"899AA%*MMEr   Nr   r
   r   r   r   r   r   __doc__r'   r   r   r   r   r   +   s2                    r   r   c                      e Zd ZdZddZdS )	ContrastzAdjust image contrast.

    This class can be used to control the contrast of an image, similar
    to the contrast control on a TV set. An enhancement factor of 0.0
    gives a solid gray image. A factor of 1.0 gives the original image.
    r   r
   r   r   c                   || _         |j        dk    r|                    d          }t          t	          j        |          j        d         dz             }t          j        d|j	        |          | _
        | j
        j        | j         j        k    r)| j
                            | j         j                  | _
        d| j                                         v r4| j
                            | j                             d                     d S d S )Nr   r   g      ?r    )r   r$   r%   intr   Statmeanr   newsizer   r#   putalpha
getchannel)r   r   r0   s      r   r'   zContrast.__init__G   s    
:MM#&&E9>%((-a03677)CT::?4:?22"o55djoFFDO$*%%''''O$$TZ%:%:3%?%?@@@@@ ('r   Nr(   r)   r   r   r   r,   r,   ?   s8         
A 
A 
A 
A 
A 
Ar   r,   c                      e Zd ZdZddZdS )	
BrightnesszAdjust image brightness.

    This class can be used to control the brightness of an image.  An
    enhancement factor of 0.0 gives a black image. A factor of 1.0 gives the
    original image.
    r   r
   r   r   c                    || _         t          j        |j        |j        d          | _        d|                                v r/| j                            |                    d                     d S d S )Nr   r    )	r   r   r1   r$   r2   r   r#   r3   r4   r&   s     r   r'   zBrightness.__init__\   si    
)EJ
A>>%..""""O$$U%5%5c%:%:;;;;; #"r   Nr(   r)   r   r   r   r6   r6   T   2         < < < < < <r   r6   c                      e Zd ZdZddZdS )		SharpnesszAdjust image sharpness.

    This class can be used to adjust the sharpness of an image. An
    enhancement factor of 0.0 gives a blurred image, a factor of 1.0 gives the
    original image, and a factor of 2.0 gives a sharpened image.
    r   r
   r   r   c                    || _         |                    t          j                  | _        d|                                v r/| j                            |                    d                     d S d S )Nr    )r   filterr   SMOOTHr   r#   r3   r4   r&   s     r   r'   zSharpness.__init__l   sf    
,,{'9::%..""""O$$U%5%5c%:%:;;;;; #"r   Nr(   r)   r   r   r   r:   r:   d   r8   r   r:   N)
__future__r    r   r   r   r	   r   r,   r6   r:   r   r   r   <module>r@      s!  ( # " " " " " + + + + + + + + + +@ @ @ @ @ @ @ @$         H      (A A A A Ax A A A*< < < < < < < < < < < < < < < < < <r   