
    zvgg                    |   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    O/var/www/pixelcanvas.ch/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   |d         }|d
         }|d         }t	          |d          }t
                              d||||           t	          |d          t	          |d          f| j        d<   |dk    r|dk    rdx}}	nW|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                    | _
        | j                             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$|| j                                         |	||z  f          g| _        d S )%N   znot a PCX file         r   r   r   r   r   zbad PCX image sizezBBox: %s %s %s %sA   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infor   rawpaletteseekioSEEK_ENDlenranger
   OSError_mode_sizesizer   _Tiletelltile)selfsmsgbbox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GLL\\daiiFaKKDGG %C#,,
!WtAw&Q$q'(99

 *Q-$&*q0 f$$fqj F	!]/TY//// OE4'6F?9STT
			r   N)r   r   )__name__
__module____qualname__formatformat_descriptionrT   r   r   r   r   r   1   s9        F%P
 P
 P
 P
 P
 P
r   r   )r   r   r   r(   )r   r"   r   r*   )r   r"   r   r)   )r   r"   r   r/   )r(   r*   r)   r+   imImage.Imager3   	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   r0   r"   r   z6PcxImagePlugin._save: xwidth: %d, bits: %d, stride: %d)d   r`   r   r   s                           s       s6                                                         r   r2   r1   r)   r%   r+   i   r*   r.   r   )SAVErP   KeyError
ValueErrorrD   r7   r8   writer
   o16rF   r   _saverE   rZ   
getpaletter?   r@   )rZ   r3   r]   rL   rM   rN   rQ   erJ   rS   screenr'   r;   rR   s                 r   rg   rg      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   )rZ   r[   r3   r\   r]   r^   r   r   )
__future__r   r=   loggingtypingr    r   r   r   _binaryr	   r6   r
   r   rf   	getLoggerrU   r7   r   r   rb   rg   register_openrX   register_saveregister_extensionregister_mimer   r   r   <module>ru      s  6 # " " " " " 				        , , , , , , , , , , ! ! ! ! ! !       ! ! ! ! ! !		8	$	$9 9 9 9T
 T
 T
 T
 T
9& T
 T
 T
z 
		 D  D  D  D V  L'w ? ? ?  L' / / /  ,f 5 5 5  L' 7 7 7 7 7r   