Team Ai
Datasetpublic

codekingpro/portable-devtools

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

2v�j�O��B�SSKJr SSKrSSKJrJr SSKJrJrJ	r	 SSK3Jr SSK4J
r SSK5Jr SS	K6Jr SS7K8Jr SSS
SSSS.rSrS'SjrS'Sjr"SS\R5r"SS\R25r"SS\5rSSSSSS .rS(S!jrS)S*S"jjr\R>"\R@\\5 \RB"\R@\5 \RD"\R@S#5 \RF"\R@S$5 \RH"S%\5 \R>"\R@\\5 \RB"\R@\5 \RD"\R@S&5 \RF"\R@S$5 g)+�)�annotationsN)�IO�Any�)�Image�	ImageFile�ImagePalette)�i16le)�i32le��o8)�o16le)�o32le)�PzP;1)rzP;4)rr)�RGB�BGR;15)r�BGR)r�BGRX)r����� Fc�$�URS5$)N�BM)�9startswith��prefixs �XD:\code\apps\devtools\python\user_packages\Python313\site-packages\PIL/BmpImagePlugin.py�_acceptr 6s�����U�#�#�c��[U5S;$)N)��(�4�8�@�l�|)�i32rs r�_dib_acceptr+:s���v�;�8�8�8r!c��\rSrSrSrSrSrSSSSS	S10S.r\R5Hur	r11\12\"5\	'M SSSjjrSS
jr
Srg)�BmpImageFile�Az0Image plugin for the Windows Bitmap format (BMP)�Windows Bitmap�BMPrr��r�)�RAW�RLE8�RLE4�	BITFIELDS�JPEG�PNGc�&�URceURRURRpCU(aU"U5 [U"S55SS.n[	US[135(de[R"URUSS-145nUSS:XaU[US5US'[US	5US15'[US5US'[US5US
'URSUS'SUS'GOAUSS;Ga#USS:HUS'US(aSOSUS'[US5US'US(d[US5OS[US5-16US17'[US5US'[US5US
'[US5US'[US5US'[US5[US54US'[US 5US!'SUS'[	US[5(de[S"US55URS#'USURS$:XGa/S%Qn[U5S&:�aO[U5S':�aURS(5 OSUS('[U5Hup�[US)US--5XY'M O!SUS('UHn	[U"S55XY'M [	US*[185(de[	US+[195(de[	US,[205(de[	US([215(deUS*US+US,4US-'US*US+US,US(4US.'OS/USS03n22[U235e[	US[245(de[	US25[265(deUSUS274Ul[	US
[285(deUR#S!S5(dSUS
-US!'[	US[295(de[	US![305(deUS1US-:XaUS
S::a
X%SUS!--
n[$R#US
S25uUlnUR((dS3US
S03n31[U325eS4nUSURS$:Xa�/S5QS6/S7S8/S9.n
S:S;S<S=S>S?S@S?SASBSCSD.nUS
U
;a�US
SE:XaNUS.X�S
;a@[	US.[5(deX�S
US.4nSFU;aS>OUR(UlO�US
SG;a5US-X�S
;a'[	US-[5(deX�S
US-4nO�SHn33[U345eSHn35[U365eUSURS:Xa$US
SE:XaUSI:Xd[*(a	SJuo�lO<USURSKURSL4;aSMnOSNUSS03n37[U385eUR(SO:Xa�SUS!s=:aSP::dO SQUS!S03n39[U405eUSnU"X�S!-5nSRnUS!S	:XaSSO[-[/US!55n[U5H*unnUUU-UU-S-nU[1U5S-:wdM(STnM, U(aUS!S	:XaSUOSVUlUR(nO+SOUl[2R4"US:XaS:OSAU5UlUSURS'U/nUSM:Xa%URUSURSL:H5 O=[	US[415(deURUSUS
-SW-S-	SX-5 URUS5 [R8"USSUSUS424U=(d URR;5[U55/Ulg)Yz Read relevant info about the BMPNr�����)�header_size�	directionr<r#r�widthr1�height�planes��bitsr4�compressionr2�palette_padding)r$r%r&r'r(r)����y_fliprr=lr�43r�	data_size�r�pixels_per_meter��colorsc3�*# �UH	oS-v� M g7f)���o_�C@N���.0�xs  r�	<genexpr>�'BmpImageFile._bitmap.<locals>.<genexpr>�s���$X�:W�Q��[�:W�s��dpir7)�r_mask�g_mask�b_mask�0r%�a_mask�$rWrXrY�rgb_mask�	rgba_maskzUnsupported BMP header type (�)�)�razUnsupported BMP pixel depth (�raw)�����rFr��~rdrer�rgrerFr�rgrdrerF�rFrerdrg�rdrerFrg�rgrerFrd�rrrr�rdrerF�i�i���i|i�rp)rrrr�XBGR�BGXR�ABGR�RGBA�BGRA�BGARrzBGR;16r))rrc)rrf)rrh)rri)rrj)rrk)rrl)rrm)rrn)rro)rrqr�A)rrz Unsupported BMP bitfields layout�)rvrur5r6�bmp_rlezUnsupported BMP compression (rizUnsupported BMP Palette size (T�rrFF�1�Lrp�����)�fp�read�seekr*�44isinstance�intr�45_safe_read�i16�COMPRESSIONS�tuple�info�len�append�	enumerate�OSError�_size�get�BIT2MODE�_mode�mode�
USE_RAW_ALPHA�list�ranger
r	rb�palette�_Tile�tell�tile)�self�header�offsetr�r��	file_info�header_data�masks�idx�mask�msg�raw_mode�decoder_name�	SUPPORTED�46MASK_MODES�paddingr��	grayscale�indices�ind�val�rgb�argss                       r�_bitmap�BmpImageFile._bitmapMs����w�w�"�"�"��W�W�\�\�4�7�7�<�<�d����L��t�A�w�<��>47�	��)�M�2�C�8�8�8�8��*�*�4�7�7�I�m�4L�q�4P�Q��48�]�#�r�)�!$�[�!�!4�I�g��"%�k�1�"5�I�h��"%�k�1�"5�I�h�� #�K�� 3�I�f��'+�'8�'8��'?�I�m�$�+,�I�'�(��}�
%�)C�
C�"-�a�.�D�"8�I�h��*3�H�*=�Q�2�I�k�"�!$�[�!�!4�I�g��!��*��K��#��S��a�0�0�
�h��49#&�k�1�"5�I�h�� #�K�� 4�I�f��'*�;��';�I�m�$�%(��b�%9�I�k�"��K��$��K��$�-�I�(�)�#&�k�2�"6�I�h��+,�I�'�(��i�(:�;�U�C�C�C�C�$�$X�)�DV�:W�$X�X�D�I�I�e����'�4�+<�+<�[�+I�I�6���{�#�r�)��;�'�2�-����X�.�.1�	�(�+�%.�u�%5�	��*-�k�2��a��<�*H�	��&6�+.�I�h�'� %��*-�d�1�g�,�	��!&�!�)�H�"5�s�;�;�;�;�!�)�H�"5�s�;�;�;�;�!�)�H�"5�s�;�;�;�;�!�)�H�"5�s�;�;�;�;��h�'��h�'��h�'�)�	�*�%��h�'��h�'��h�'��h�'�	*�	�+�&��2�)�M�2J�1K�1�M�C��#�,���)�G�,�c�2�2�2�2��)�H�-�s�3�3�3�3��w�'��8�)<�<��50��)�F�+�S�1�1�1�1��}�}�X�q�)�)�"#�y��'8�"8�I�h���)�$5�6��<�<�<�<��)�H�-�s�3�3�3�3��R�)�M�2�2�2�y��7H�A�7M�� 1�2�Y�x�5H�H�H�F� (�|�|�I�f�,=�x�H���51�H��y�y�1�)�F�2C�1D�A�F�C��#�,�����]�#�t�'8�'8��'E�E�	�.�.�*�,A�B�
;�I�6<�;A�7=�<B�<B�<B�<B�,2�05�-5�-5��J��� �I�-��f�%��+�!�+�.�)�f�<M�2N�N�%�i��&<�e�D�D�D�D�)�V�+<�i��>T�*U�V�H�+.�(�?���	�	�D�J��f�%��1�!�*�-��V�;L�1M�M�%�i�52�&;�U�C�C�C�C�)�V�+<�i�53�>S�*T�U�H�<�C�!�#�,�&�8���c�l�"�
�}�
%��):�):�5�)A�
A��� �B�&��"��
�
�'5�$��*��
�}�
%����f�%����f�%�*54�55�%�L�1�)�M�2J�1K�1�M�C��#�,���9�9����	�(�+�4�u�4�6�y��7J�6K�1�M���c�l�"�#�$5�6���w�8�)<�<�=�� �	�!��*�a�/���e�I�h�$7�8�9��!*�'� 2�H�C��!�#��-�#��-�!�2C�D�C��b��g��k�)�$)�	�!3��(1�(�(;�q�(@��c�D�J�#�y�y�H�!$�D�J�#/�#3�#3�")�Q�,��E�7�$�D�L�56$-�]�#;��	�	�-� �#�*���9�$��K�K�	�-�0�D�4E�4E�f�4M�M�N��i��0�#�6�6�6�6��K�K�)�G�,�y��/@�@�2�E�!�K�PR�S�T����I�k�*�+��O�O���A�y��)�9�X�+>�?��(�$�'�'�,�,�.��d��	
�57��	r!c���URceURRS5n[U5(d
Sn[U5e[	US5nURUS9 g)z-Open file, check magic number and read headerNr`zNot a BMP filerH)r�)rr�r �SyntaxErrorr*r�)r��	head_datar�r�s    r�_open�BmpImageFile._open5s[���w�w�"�"�"��G�G�L�L��$�	��y�!�!�"�C��c�"�"��Y��#�����F��#r!)r�r�r�r�N�rr)r�r�r�r��return�None�r�r�)�__name__�58__module__�__qualname__�__firstlineno__�__doc__�format_description�formatr��items�k�v�varsr�r��__static_attributes__rPr!rr-r-AsU��:�*��
�F��a���A�VW�X�L��"�"�$���1����q�	�%�f59�P$r!r-c�"�\rSrSrSrSSjrSrg)�
BmpRleDecoderiDTc���URceURSn[5nSnURRURR60-n[
U5U:Ga�URRS5nURRS5nU(aU(dGO}USnU(a�XH-URR:�a#[SURRU-615nU(aH[USS-	5n	[USS-5n62[U5HnUS-S:XaX9-
nMX:-
nM OX7U--
nXH-
nGO�USS:XaW[
U5URR-S:wa-US-
n[
U5URR-S:waM-SnGOdUSS:XaGOkUSS:XatURRS5n[
U5S:aGO6Uup�USX�URR----
n[
U5URR-nO�U(aOUSS-nURRU5nUH%nU[US-	5-
nU[US-5-
nM' O$USnURRU5nX<-
n[
U5U:aOdXGS-
nURR5S-S:wa*URRS[R5 [
U5U:aGM�URS:XaSOSnUR![#U5USURS	45 g63)Nrrr�r1�r}rr;)r;r)�fdr��	bytearray�state�xsize�ysizer�r��maxr
r�r�r��os�SEEK_CURr��64set_as_raw�bytes)r��buffer�rle4�datarS�dest_length�pixels�byte�65num_pixels�first_pixel�second_pixel�index�66bytes_read�right�up�67byte_count�	byte_read�rawmodes                  r�decode�BmpRleDecoder.decodeGs����w�w�"�"�"��y�y��|���{��
���j�j�&�&����)9�)9�9���$�i�+�%��W�W�\�\�!�_�F��7�7�<�<��?�D�������J���>�D�J�J�$4�$4�4�!$�Q��68�69�(8�(8�1�(<�!=�J��"$�T�!�W��\�"2�K�#%�d�1�g��n�#5�L�!&�z�!2�� �1�9��>� �/�D� �0�D�	"3��:�-�-�D������7�a�<��d�)�d�j�j�&6�&6�6�!�;������d�)�d�j�j�&6�&6�6�!�;��A��!�W��\���!�W��\�!%�����a��J��:���*�� *�I�E��G�u�D�J�J�4D�4D�/D�'D�E�E�D��D�	�D�J�J�$4�$4�4�A��%)�!�W��\�70�%)�W�W�\�\�*�%=�71�)3�I� �B�y�A�~�$6�6�D� �B�y�4�'7�$8�8�D�*4�&*�!�W�72�%)�W�W�\�\�*�%=�73��*���:���3���a��L�A��w�w�|�|�~��)�Q�.������Q����4�u�$�i�+�%�v���c�)�#�s������d��W�q�$�)�)�B�-�.@�A�r!rPN)r�z$bytes | Image.SupportsArrayInterfacer�ztuple[int, int])r�r�r�r��	_pulls_fdr�r�rPr!rr�r�Ds
���I�Cr!r�c�&�\rSrSrSrSrSSjrSrg)�DibImageFilei��DIBr/c�$�UR5 g)N)r�)r�s rr��DibImageFile._open�s�����r!rPNr�)r�r�r�r�r�r�r�r�rPr!rr�r��s��
�F�)��r!r�)r|rr1)r}r�)rrr�)rrr)rvrr)r|r}rrruc��[XUS5 g)NF)�_save)�imr�filenames   r�	_dib_saver��s��	�"�(�E�"r!c�|�[URupEnURn	U	RSS5n74[
SU7555nURSU-S-S-S	-S76-nSn
X�RS-nURS
:XaSRSS55nOoURS:Xa"SRS[S555nO=URS:Xa+URRSS5n[U5S-nOSnU(aXSU
-US--nUU-nUS:�a
Sn[U5eURS[U5-[S5-[U5-5 UR[U
5[URS5-[URS5-[!S5-[!U5-[S5-[U5-[US5-[US5-[U5-[U5-5 URSU
S-77-5 U(aURU5 ["R$"X["R&"SSUR-SXLS45/5 g![a!nSURS3n[U5UeSnAff=f) Nzcannot write mode z as BMPrV)�`r�c3�D# �UHn[US-S-5v� M g7f)rOg�?N)r�rQs  rrT�_save.<locals>.<genexpr>�s!���4��1��A��K�#�%�&�&���� rrErr2r~r$rr|r!c3�D# �UHn[U5S-S-v� M g7f�r2r�Nr�rR�is  rrTr��s���A��1�2�a�5�1�9�w�.��r�r{r}c3�D# �UHn[U5S-S-v� M g7fr�rr�s  rrTr��s���C�78�1�2�a�5�1�9�w�.�79�r�r�rrrrr`l��z)File size is too large for the BMP formatrr�rbr�r;)�SAVEr��KeyErrorr��encoderinfor�r��size�joinr�r��80getpaletter��81ValueError�write�o32�o16rr�r�)r�rr��
bitmap_headerr�rBrM�er�r�rV�ppm�strider��imager�r��	file_sizes                  rr�r��s���"� $�R�W�W�
���v�82�>�>�D�83�(�(�5�(�84#�C��4��4�854�C��w�w�q�z�D� �1�$��*�Q�.�2�
6�F�
�F��W�W�Q�Z��E�	�w�w�#�~��(�(�A��A�A��	���C���(�(�C��c�86�C�C��	���C���%�%�"�"�5�&�1���W���"������f��v��z�)���U�N�	��y� �=�C��S�/�!�87�����)�n�
��!�f�
��&�k�
�	88��H�H��F��89
�b�g�g�a�j�/�	�90
�b�g�g�a�j�/�	��a�&�	��d�)�		�91�a�&�	��e�*�
	��c�!�f�+�	��c�!�f�+�	��f�+�		��f�+�92	���H�H�U�f�r�k�
"�#��93�����
�O�O�94���������(8�!�g�r�=R�S�T���w�"�"�2�7�7�)�7�3���c�l��!��"�s�J�95J;�J6�6J;z.bmpz	image/bmprzz.dib)rr�r��bool)r��Image.Imager�	IO[bytes]r��str | bytesr�r�)T)96r�rrr
r�rrrr�r�)%�97__future__rr��typingrrrarrr	�_binaryr98r�rr*r
rrrrr�r�r r+r-�	PyDecoderr�r�r�r�r��
register_openr��
register_save�register_extension�
register_mime�register_decoderrPr!r�<module>rs���2#�	��,�,�!�!��!�!����������
�$�9�@$�9�&�&�@$�FF�I�'�'�F�X�<��99�	�	�����#�100RV�B��B�"�B�.9�B�JN�B�	�B�T���L�'�'��w�?����L�'�'��/�����,�,�f�5����L�'�'��5����y�-�0����L�'�'��{�C����L�'�'��3�����,�,�f�5����L�'�'��5r!
codekingpro/portable-devtools · Team Ai