B
    ³è0\þ  ã               @   sH   d dl mZmZ d dlmZmZmZ dZ	G dd„ dejƒZ
d
dd„Zd	S )é   )Ú	ImageFileÚImagePalette)Úi8Úi16beÚi32bez0.1c               @   s   e Zd ZdZdZdd„ ZdS )ÚGdImageFileZGDzGD uncompressed imagesc             C   sæ   | j  d¡}t|d d… ƒdkr(tdƒ‚d| _t|dd… ƒt|dd… ƒf| _t|d ƒ}|rddnd}t|d	| d	| d … ƒ}|d
k r–|| jd< t	 
d|d	| d d	| d d … ¡| _dd| j d	| d d dfg| _d S )Ni  é   )iþÿ  iÿÿ  zNot a valid GD 2.x .gd fileÚLé   é   é    é   é   ZtransparencyZXBGRi   Úraw)r   r   )r	   r   r   )ÚfpÚreadÚi16ÚSyntaxErrorÚmodeZ_sizer   Úi32Úinfor   r   ZpaletteÚsizeZtile)ÚselfÚsZ	trueColorZtrueColorOffsetZtindex© r   ú.lib/python3.7/site-packages/PIL/GdImageFile.pyÚ_open+   s    "
&zGdImageFile._openN)Ú__name__Ú
__module__Ú__qualname__ÚformatZformat_descriptionr   r   r   r   r   r   &   s   r   Úrc             C   s:   |dkrt dƒ‚yt| ƒS  tk
r4   tdƒ‚Y nX dS )a)  
    Load texture from a GD image file.

    :param filename: GD file name, or an opened file handle.
    :param mode: Optional mode.  In this version, if the mode argument
        is given, it must be "r".
    :returns: An image instance.
    :raises IOError: If the image could not be read.
    r!   zbad modezcannot identify this image fileN)Ú
ValueErrorr   r   ÚIOError)r   r   r   r   r   ÚopenE   s    
r$   N)r!   )Ú r   r   Z_binaryr   r   r   r   r   Ú__version__r   r$   r   r   r   r   Ú<module>   s   	