
    XhP                    |   d dl mZ d dlZd dlZd dlmZ ddlmZmZm	Z	 ddl
mZ ddl
mZ ddl
mZ  ej        e          ZddZ G d dej                  ZdddddZd dZ ej        ej        ee            ej        ej        e            ej        ej        d            ej        ej        d           dS )!    )annotationsN)IO   )Image	ImageFileImagePalette)i16le)o8)o16leprefixbytesreturnboolc                .    | d         dk    o	| d         dv S )Nr   
   r   )r             )r   s    d/var/www/tools.fuzzalab.pt/emblema-extractor/venv/lib/python3.11/site-packages/PIL/PcxImagePlugin.py_acceptr   )   s    !9?8vayL88    c                      e Zd ZdZdZddZdS )PcxImageFilePCX
Paintbrushr   Nonec                ~   | j         J | j                             d          }t          |          sd}t          |          t	          |d          t	          |d          t	          |d          dz   t	          |d          dz   f}|d         |d	         k    s|d
         |d         k    rd}t          |          t          j        dg|R   | j                                         dz   }|d         }|d
         }|d         }t	          |d          }t
                              d||||           t	          |d          t	          |d          f| j        d<   |dk    r|dk    rdx}	}
n=|dk    r0|dv r,d}	d| d}
t          j
        d|dd                   | _        n|dk    r|dk    r|dk    rdx}	}
| j                             dt          j                   | j                             d          }t          |          dk    rv|d	         dk    rjt!          d          D ]2}||d
z  dz   |d
z  dz            t#          |          d
z  k    rdx}	}
 n3|	dk    r"t          j
        d|dd                    | _        n(|dk    r|dk    r|d
k    rd}	d }
nd!}t%          |          |	| _        |d         |d	         z
  |d
         |d         z
  f| _        | j        d	         |z  d"z   dz  }||k    r||dz  z  }d#| j        z   }t          j        d$g| j        R   t-          j        d%|||
||z  f          g| _        d S )&ND   znot a PCX file         r   r   r   r   r   zbad PCX image sizezBBox: %s %s %s %s<   A   B   z-PCX version %s, bits %s, planes %s, stride %s      dpi1)r   r    PzP;LRGB   @   r   ii     RGB;Lzunknown PCX mode   r   r   zsize: %sx%spcx)fpreadr   SyntaxErrori16loggerdebugtellinfor   rawpaletteseekioSEEK_ENDlenranger
   OSError_mode_sizesizer   _Tiletile)selfsmsgbboxoffsetversionbitsplanesprovided_stridemoderawmodeistrides                r   _openzPcxImageFile._open5   s   w"""GLLqzz 	#"Cc""" 1ayy#a))SAYY]C2JJNB7d1gaDG!3!3&Cc"""(040000"$ A$t2a**;	
 	
 	
 q"::s1bzz1	%1991  D77QYY6V++D$6nnnG'+E1RU8<<DLL\\daiiFaKK  D7GLLr{+++S!!A1vv}}1s  AQQUQY./2a5519<<),,w = 3;;#/#3E1QRR5#A#ADL\\daiiFaKKDGG %C#,,
!WtAw&Q$q'(99

 *Q-$&*q0 f$$fqj F	!]/TY////_UD&7FVO:TUUV			r   N)r   r   )__name__
__module____qualname__formatformat_descriptionrV   r   r   r   r   r   1   s?        F%OW OW OW OW OW OWr   r   )r   r   r   r)   )r   r"   r   r+   )r   r"   r   r*   )r   r"   r   r0   )r)   r+   r*   r,   imImage.Imager4   	IO[bytes]filenamestr | bytesr   c                   	 t           | j                 \  }}}}n-# t          $ r }d| j         d}t          |          |d }~ww xY w| j        d         |z  dz   dz  }	|	|	dz  z  }	t
                              d| j        d         ||	           | j        }
d}|                    t          d	          t          |          z   t          d
          z   t          |          z   t          d          z   t          d          z   t          | j        d         d
z
            z   t          | j        d
         d
z
            z   t          |d                   z   t          |d
                   z   dz   dz   dz   t          |          z   t          |	          z   t          d
          z   t          |
d                   z   t          |
d
                   z   dz              |
                                dk    sJ t          j        | |t          j        dd| j        z   d|||z  f          g           | j        dk    rl|                    t          d                     | j                            dd          }|ddt!          |          z
  z  z  }|                    |           d S | j        dk    rY|                    t          d                     t#          d          D ])}|                    t          |          dz             (d S d S )NzCannot save z images as PCXr   r1   r"   r   z6PcxImagePlugin._save: xwidth: %d, bits: %d, stride: %d)d   rb   r   r   s                           s       s6                                                            r3   r2   r*   r&   r,   i   r+   r/   r   )SAVErR   KeyError
ValueErrorrF   r8   r9   writer
   o16r:   r   _saverG   r\   
getpaletterA   rB   )r\   r4   r_   rN   rO   rP   rS   erK   rU   screenr(   r=   rT   s                 r   rj   rj      s:   %)-bg&vww % % %4RW444oo1$%
 gaj4!#)F
fqjF
 LL@

	   WF
C HH
2
W++	
Q%%	 T((	 a&&		
 a&&	 bgaj1n

	 bgaj1n

	 c!f++	 c!f++		 
	 	 	 V**	 f++	 a&&	  fQi..!	" fQi..#	$ %	  , 7799O
B(8!gtf}=UVVW   
w#~~
B%""5%007cCLL011
	C
Bs 	  	 AHHRUUQY	 
	  	 s    
A?Az.pcxzimage/x-pcx)r   r   r   r   )r\   r]   r4   r^   r_   r`   r   r   )
__future__r   r?   loggingtypingr    r   r   r   _binaryr	   r7   r
   r   ri   	getLoggerrW   r8   r   r   re   rj   register_openrZ   register_saveregister_extensionregister_mimer   r   r   <module>rx      s  6 # " " " " " 				        , , , , , , , , , , ! ! ! ! ! !       ! ! ! ! ! !		8	$	$9 9 9 9SW SW SW SW SW9& SW SW SWx 
		 D  D  D  D V  L'w ? ? ?  L' / / /  ,f 5 5 5  L' 7 7 7 7 7r   