o
    ÓèFh„  ã                   @   s:   d dl mZ d dlZd dlZG dd„ dejjjƒZeZ	dS )é    )ÚchainNc                   @   sF   e Zd ZdZdZdZdZdd„ Zdd„ Zdd
d„Z	dd„ Z
dd„ Zd	S )Ú
PyPNGImagez
    pyPNG image builder.
    ÚPNG)r   Fc                 K   s   t j| j| jddd�S )NTé   )Ú	greyscaleÚbitdepth)ÚpngÚWriterÚ
pixel_size)ÚselfÚkwargs© r   úJ/var/www/html/loop/nvenv/lib/python3.10/site-packages/qrcode/image/pure.pyÚ	new_image   s   zPyPNGImage.new_imagec                 C   s   dS )z
        Not used.
        Nr   )r   ÚrowÚcolr   r   r   Údrawrect   s    zPyPNGImage.drawrectNc                 C   s*   t |tƒr
t|dƒ}| j ||  ¡ ¡ d S )NÚwb)Ú
isinstanceÚstrÚopenÚ_imgÚwriteÚ	rows_iter)r   ÚstreamÚkindr   r   r   Úsave   s   

zPyPNGImage.savec                 #   sz   � ˆ   ¡ E d H  dgˆ jˆ j  }ˆ jD ]}|tt ‡ fdd„|D ƒ¡ƒ | }tˆ jƒD ]}|V  q-qˆ   ¡ E d H  d S )Nr   c                 3   s   � | ]
}| gˆ j  V  qd S ©N)Úbox_size)Ú.0Úpoint©r   r   r   Ú	<genexpr>%   s   € 
ÿz'PyPNGImage.rows_iter.<locals>.<genexpr>)Úborder_rows_iterr   ÚborderÚmodulesÚlistr   Úfrom_iterableÚrange)r   Ú
border_colÚ
module_rowr   Ú_r   r!   r   r      s$   €
ÿÿÿúÿ	ÿzPyPNGImage.rows_iterc                 c   s>   � dg| j | j| jd    }t| j| j  ƒD ]}|V  qd S )Nr   é   )r   Úwidthr$   r(   )r   Ú
border_rowr+   r   r   r   r#   /   s
   €ÿzPyPNGImage.border_rows_iterr   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Úallowed_kindsÚneeds_drawrectr   r   r   r   r#   r   r   r   r   r      s    
r   )
Ú	itertoolsr   r   Úqrcode.image.baseÚqrcodeÚimageÚbaseÚ	BaseImager   ÚPymagingImager   r   r   r   Ú<module>   s
    .