Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
PpmImagePlugin.cpython-313.pyc70 linesDownload Raw Back to __pycache__
1�

2v�j�1��D�SSKJr SSKrSSKJr SSKJrJr SSKJ	r3 SSKJr SSKJr
 S	rS4SSS5SSS
SSSS
S.rSSjr"SS\R5r"SS\R$5r"SS\R$5rSSjr\R,"\R.\\5 \R0"\R.\5 \R2"S\5 \R2"S\5 \R4"\R./SQ5 \R6"\R.S5 g) �)�annotationsN)�IO�)�Image�	ImageFile)�i16be)�o8)�o32les 	6
�1�L�RGB�CMYK�F�P�RGBA)�P1�P2�P3�P4�P5�P6sP0CMYK�PfsPyPsPyRGBAsPyCMYKc�l�[U5S:�=(a  URS5=(a USS;$)N��Prs	0123456fy)�len�7startswith)�prefixs �XD:\code\apps\devtools\python\user_packages\Python313\site-packages\PIL/PpmImagePlugin.py�_acceptr 1s/���v�;�!��U�� 1� 1�$� 7�U�F�1�I��<U�U�c�:�\rSrSrSrSrS	SjrS	SjrS8SjrSr	g)�PpmImageFile�9�PPMz
Pbmplus imagec��URceSn[S5H6nURRS5nU(a9U[;a U$X-
nM8 U$)Nr!�r)�fp�range�read�b_whitespace)�self�magic�_�cs    r�_read_magic�PpmImageFile._read_magic=sX���w�w�"�"�"����q��A������Q��A���\�)����
�J�E�	�10�r!c���URceSn[U5S::a�URRS5nU(dOrU[;a11U(dMEO^US:XaCURRS5S;a"URRS5S;aM"M�X-
n[U5S::aM�U(d
Sn[	U5e[U5S:�aSU-n[	U5eU$)Nr!�12r�#s
13z Reached EOF while reading headers!Token too long in file header: %s)r(rr*r+�14ValueError)r,�tokenr/�msg�msg_too_longs     r�_read_token�PpmImageFile._read_tokenIs����w�w�"�"�"����%�j�B�������Q��A����l�"�����d���g�g�l�l�1�o�W�4���g�g�l�l�1�o�W�4���J�E��%�j�B���4�C��S�/�!�
��Z�"�_�?�%�G�L��\�*�*��r!c���URceUR5n[UnX lUS;aSUlOUS;aSUlO
US;aSUl[UR55[UR554Ul	SnUS	;aS15nUS:XaSnO�US
:Xao[UR55nUS:Xd[R"U5(d
Sn[U5e[U5URS'US:aSOSnUSS4nOr[UR55nSUs=:aS:dO Sn[U5eUS:�a
US:XaSUlUnUS16:waUS:Xa	US:XaSnOUS:waSnUS:XaUOXx4n[ R""USUR$-URR'5U5/Ulg![a Sn[	U5ef=f)Nznot a PPM file)rrzimage/x-portable-bitmap)rrzimage/x-portable-graymap)rrzimage/x-portable-pixmap�raw)rrr�	ppm_plainr�1;Irgz!scale must be finite and non-zero�scaler�F;32FzF;32BF�����iz1maxval must be greater than 0 and less than 65536��r�I����I;16B�ppm�rr)r(r0�MODES�KeyError�SyntaxError�_mode�custom_mimetype�intr9�_size�float�math�isfiniter5�abs�infor�_Tile�size�tell�tile)	r,�magic_number�moder7�decoder_name�argsr?�rawmode�maxvals	         r�_open�PpmImageFile._openes����w�w�"�"�"��'�'�)��	#���&�D��17��>�)�#<�D� �
�^�
+�#=�D� �
�^�
+�#<�D� ���)�)�+�,�c�$�2B�2B�2D�.E�E��18����0�0�&�L��3�;��D�
�S�[��$�*�*�,�-�E���|�4�=�=��#7�#7�9�� ��o�%�!$�U��D�I�I�g��!&���g��G��Q��#�D���)�)�+�,�F��v�%��%�I�� ��o�%���|���� ��19��G��{�*��U�?�t�s�{�%�G��s�]�#(�L�*�e�3�7�'�9J�D��O�O�L�&�4�9�9�*<�d�g�g�l�l�n�d�S�20��	��_�	#�"�C��c�"�"�	#�s�	G�G')rKrNrLrWN��return�bytes)ra�None)21�__name__�22__module__�__qualname__�__firstlineno__�format�format_descriptionr0r9r^�__static_attributes__�r!rr#r#9s��
�F�(��23��8724r!r#c�d�\rSrSr%SrS\S'S
SjrSSSjjrSSjrSSjr	SS	jr25SS26jrSrg)�PpmPlainDecoder�T�bool�_comment_spansc�r�URceURR[R5$)N)�fdr*r�	SAFEBLOCK)r,s r�_read_block�PpmPlainDecoder._read_block�s+���w�w�"�"�"��w�w�|�|�I�/�/�0�0r!c��URSU5nURSU5nX4-S:�a[X45$[X45$)N�27�
r)�find�min�max)r,�block�start�a�bs     r�_find_comment_end�!PpmPlainDecoder._find_comment_end�s=���J�J�u�e�$���J�J�u�e�$���E�A�I�s�1�y�4�3�q�9�4r!c�R�UR(a?U(a8URU5nUS:waXS-SnOUR5nU(aM8SUlURS5nUS:XaU$URX5nUS:waUSUXS-S-nOUSUnSUlU$MP)NrArFTr4)rpr�rtry)r,r|�comment_end�
comment_starts    r�_ignore_comments� PpmPlainDecoder._ignore_comments�s�������"�4�4�U�;���"�$�"��/�"3�4�E��!�,�,�.�E��%�$����!�J�J�t�,�M���"�����0�0��F�K��b� ��n�}�-��A�o�6G�0H�H���n�}�-��&*��#����r!c���[5nURRURR-n[	U5U:wa�UR5nU(dOqUR
U5nSRUR55nUH#nUS;dMS[U/5-n[U5e X-SUn[	U5U:waM�[RSS5nURU5$)z�28This is a separate method because in the plain PBM format, all data tokens are29exactly one byte, so the inter-token whitespace is optional.30r!)�0�1sInvalid token for this mode: %sNs01s�)
�	bytearray�state�xsize�ysizerrtr��join�splitrbr5�	maketrans�	translate)r,�data�total_bytesr|�tokensr6r7�inverts        r�_decode_bitonal�PpmPlainDecoder._decode_bitonal�s���31�{���j�j�&�&����)9�)9�9���$�i�;�&��$�$�&�E����)�)�%�0�E��X�X�e�k�k�m�,�F�����(�<�u�e�W�~�M�C�$�S�/�)� ��M�<�K�0�D��$�i�;�&������4���~�~�f�%�%r!c��[5nSnURS:XaSOSnURS:XaSOSn[R"UR5nURR32URR-U-U-nSn[U5U:wGanUR5n	U	(dU(a[S5n	OU$URU	5n	U(aX�-n	SnU	R5n33U	(aMU	S	SR5(d5U34R5n[U5U:�aS35USUS--n[U5eU36H�n[U5U:�aS37USUS--n[U5e[U5n
U
S:aSU
3n[U5eX�:�aS
U
3n[U5e[X�-U-5n
X RS:Xa[!U
5O38[#U
5-
n[U5U:XdM� O [U5U:waGMnU$)Nr3rC�rrDrBr!� rAs Token too long found in data: %srzChannel value is negative: z'Channel value too large for this mode: )r�rYr�getmodebandsr�r�r�rrtr�r��isspace�popr5rM�round�o32r	)r,r]r��max_len�out_byte_count�out_max�bandsr��39half_tokenr|r�r7r6�value�msg_strs               r�_decode_blocks�PpmPlainDecoder._decode_blocks�s����{����"�i�i�3�.��A���9�9��+�%����"�"�4�9�9�-���j�j�&�&����)9�)9�9�E�A�N�R���40��$�i�;�&��$�$�&�E���%�d�O�E��B��?�)�)�%�0�E��"�*�� �41��[�[�]�F��U�2�3�Z�/�/�1�1�#�Z�Z�\�42��z�?�W�,�;�j��7�UV�;�>W�W��%�S�/�)����u�:��'�=��m��RS��@T�T�C�$�S�/�)��E�43���1�9� ;�E�7�C�G�$�W�-�-��>� G��w�O�G�$�W�-�-��e�n�w�6�7���i�i�3�&6��E�44�B�u�I�E���t�9��+�� �3�$�i�;�&�P�r!c�45�SUlURS:XaUR5nSnO>URSnUR	U5nURS:XaSOURnUR[
U5U5 g)NFrz1;8rArC�I;32�rAr)rprYr�r[r��46set_as_rawrb)r,�bufferr�r\r]s     r�decode�PpmPlainDecoder.decodesq��#����9�9����'�'�)�D��G��Y�Y�r�]�F��&�&�v�.�D� $�	�	�S� 0�f�d�i�i�G�����d��W�-�r!)rpNr`)r)r|rbr}rMrarM)r|rbrarb)rar�)r]rMrar��r�z$bytes | Image.SupportsArrayInterfaceraztuple[int, int])
rdrerfrg�	_pulls_fd�__annotations__rtr�r�r�r�r�rjrkr!rrmrm�s-���I���1�475�48 �D&�21�f49r!rmc�"�\rSrSrSrSSjrSrg)�50PpmDecoderi,Tc�F�URce[5nURSnUS:aSOSnURS:XaSOSnURS:XaSOSn[R51"UR5nURRURR-U-U-n[U5U:a�URRXG-5n	[U	5XG-:aO}[U5H]n52US:XaX�O
[X�U-5n[U[X�-U-55nX RS:Xa[U5O53[!U5-
nM_ [U5U:aM�URS:XaS	OURnUR#[%U5U5 g54)NrA�rrrCr�rDrBr�r�)rrr�r[rYrr�r�r�r�rr*r)�i16rzr�r�r	r�rb)
r,r�r�r]�
in_byte_countr�r�r��dest_length�pixelsrr�r\s
             rr��PpmDecoder.decode/sc���w�w�"�"�"��{�����2���#�c�\��q�
�"�i�i�3�.��A���9�9��+�%����"�"�4�9�9�-���j�j�&�&����)9�)9�9�E�A�N�R���$�i�+�%��W�W�\�\�-�"7�8�F��6�{�]�2�2���5�\��!.�!�!3�F�I��V��EV�9W���G�U�5�>�G�+C�%D�E���i�i�3�&6��E�55�B�u�I�E��"��$�i�+�%�!�I�I��,�&�$�)�)������d��W�-�r!rkNr�)rdrerfrgr�r�rjrkr!rr�r�,s���I�r!r�c��URS:XaSup4OoURS:XaSup4OZURS;aSup4OEURS;aSup4O0URS	:XaS56up4OSURS3n[U5eURUS
UR--5 US:XaURS5 OGUS:Xa*US:XaURS5 O)URS5 OUS:XaURS5 URS	:XaSOSn[R57"X[R"SSUR-SUSU45/5 g)Nr)r>rr)rr)rCzI;16)rEr)r
r)r
rr)r@rzcannot write mode z as PPMs58%d %d59rs25560rs6553561rs-1.062rArr<rGr)rY�OSError�writerUr�_saverT)�imr(�filenamer\�headr7�	row_orders       rr�r�Ms.��	�w�w�#�~�$�
���	���C��"�
���	���M�	!�&�
���	���O�	#�$�
���	���C��&�
���"�2�7�7�)�7�3���c�l���H�H�T�L�2�7�7�*�
*�+��u�}�63�����	
����c�>��H�H�X���H�H�Z� �	
���64������g�g��n��!�I�
�O�O�65���������(8�!�g�q�)�=T�U�V�r!rFr=)z.pbmz.pgmz.ppmz.pnmz.pfmzimage/x-portable-anymap)rrbraro)r�zImage.Imager(z	IO[bytes]r�zstr | bytesrarc)�66__future__rrP�typingr�rr�_binaryrr�r	r67r�r+rHr r#�	PyDecoderrmr�r��
register_openrh�
register_save�register_decoder�register_extensions�
register_mimerkr!r�<module>r�s�� #����!��!�68+�������������	��$V�c69�9�&�&�c70�TF�i�)�)�F�R��$�$��B�D���L�'�'��w�?����L�'�'��/����u�j�)����{�O�4����,�-�-�/W�X����L�'�'�)B�Cr!
codekingpro/portable-devtools · Team Ai