Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
ImagePalette.cpython-313.pyc81 linesDownload Raw Back to __pycache__
1�

2v�j%����SSKJr SSKrSSKJr SSKJr SSKJrJ	r	J3r4Jr Sr\(aSSKJ
r
 "S	S55rSSjrSSjrSS
jrSSSjjrSSSjjrSSSjjrSSSjjrSSjrg)�)�annotationsN)�Sequence)�IO�)�GimpGradientFile�GimpPaletteFile�6ImageColor�PaletteFileF)�Imagec��\rSrSrSrSSSjjr\SSj5r\RSSj5r\SSj5r	\	RSSj5r	SS	jr7SS8jrSSjr\r
SSSjjrSSS
jjrSSjrSrg)�ImagePalette�a�9Color palette for palette mapped images10 11:param mode: The mode to use for the palette. See:12    :ref:`concept-modes`. Defaults to "RGB"13:param palette: An optional palette. If given, it must be a bytearray,14    an array or a list of ints between 0-255. The list must consist of15    all channels for one color followed by the next color (e.g. RGBRGBRGB).16    Defaults to an empty palette.17Nc�\�XlSUlU=(d18 [5UlSUlg�N)�mode�rawmode�	bytearray�palette�dirty)�selfrrs   �VD:\code\apps\devtools\python\user_packages\Python313\site-packages\PIL/ImagePalette.py�__init__�ImagePalette.__init__+s%��19�	�#'����-�)�+���!%��20�c��UR$r)�_palette�rs rr�ImagePalette.palette5s���}�}�rc��SUlXlgr)�_colorsr)rrs  rrr9s��:>����
rc�2�URc[UR5n0Ul[S[UR5U5H?n[URX"U-5nX0R;aM.X!-URU'MA UR$)Nr)r �lenr�ranger�tuple)r�mode_len�i�colors    r�colors�ImagePalette.colors>s|���<�<���4�9�9�~�H��D�L��1�c�$�,�,�/��:���d�l�l�1�8�|�<�=���L�L�(��&'�m����U�#�	;�21�|�|�rc��Xlgr)r )rr(s  rr(r)Js���rc���[5nURUlURUlURbURSSUlURUlU$r)r
rrrr)r�news  r�copy�ImagePalette.copyNsH���n���9�9����l�l����<�<�#��,�,�q�/�C�K��J�J��	��22rc��UR(aURUR4$URUR54$)z�23Get palette contents in format suitable for the low-level24``im.putpalette`` primitive.25 26.. warning:: This method is experimental.27)rrr�tobytesrs r�getdata�ImagePalette.getdataYs3���<�<��<�<����-�-��y�y�$�,�,�.�(�(rc���UR(a
Sn[U5e[UR[5(aUR$[28R29"SUR5nUR
5$)zEConvert palette to bytes.30 31.. warning:: This method is experimental.32�!palette contains raw palette data�B)r�33ValueError�34isinstancer�bytes�arrayr0)r�msg�arrs   rr0�ImagePalette.tobytesdsU��35�<�<�5�C��S�/�!��d�l�l�E�*�*��<�<���k�k�#�t�|�|�,���{�{�}�rc�:�[UR[5(d[UR5Ul[	UR5[	UR365-nSnU(aGURRS5URRS54nX4;aUS-
nX4;aMUS:�a`U(aE[[[UR5555HupVUS:XdM
XT;dMUn O US:�aSn[U5UeU$)N��37background�transparencyr�rz$cannot allocate more than 256 colors)
r7rrrr"r�info�get�reversed�list�	enumerate�	histogramr6)r�image�e�index�special_colorsr&�countr:s        r�_new_color_index�ImagePalette._new_color_indexts����$�,�,�	�2�2�%�d�l�l�3�D�M��D�L�L�!�S����^�3��CE����38�39���|�,��40�41���~�.��N��)���42���)��C�<�� (��i����8I�.J�)K� L�H�A���z�a�&=� !���!M���|�<�� ��o�1�,��rc�D�UR(a
Sn[U5e[U[5(aoURS:Xa+[U5S:XaUSS:wa
Sn[U5eUSSnO$URS:Xa[U5S:XaUS	-
nURU$S[U53n[U5e![a�nURX$5n[UR[5(deXPRU'[UR5nXV-[UR5:a8URSXV-[U5-URXV-U-S-Ul	OU=R[U5-
sl	S43Ul
UsSnA$SnAff=f)zWGiven an rgb tuple, allocate palette entry.44 45.. warning:: This method is experimental.46r4�RGB����z/cannot add non-opaque RGBA color to RGB paletteN�RGBA)rSrzunknown color specifier: )rr6r7r$rr"r(�KeyErrorrMrrrr8r�repr)rr'rHr:rIrJr%s       r�getcolor�ImagePalette.getcolor�s|���<�<�5�C��S�/�!��e�U�#�#��y�y�E�!��u�:��?��Q�x�3��O��(��o�-�!�"�1�I�E�����f�$��u�:��?��V�O�E�
��{�{�5�)�)�$.�d�5�k�]�;�C��S�/�!��%�
��-�-�e�7��!�$�-�-��;�;�;�;�%*���E�"��t�y�y�>���#�c�$�,�,�&7�7��
�
�&8��(8�9���,�'��-�-��(8�8�(C�(E�F�G��M��M�M�U�5�\�1�M���47����
�s�B<�<48F�CF�F�Fc��UR(a
Sn[U5eSn[U[5(a[	US5nSnURS5 URSURS35 [UR5n[S5H�nURU5 [U[UR5-US	-[UR5-5H+nURS49Xd:aURUOS35 M- URS5 M� U(aUR5 gg!U(aUR5 ff=f)
zFSave palette to text file.50 51.. warning:: This method is experimental.52r4F�wTz53# Palette54z# Mode: �55rAr� rN)rr6r7�str�open�writerr"rr#�close)r�fpr:�open_fp�palette_lenr&�js       r�save�ImagePalette.save�s��56�<�<�5�C��S�/�!����b�#����b�#��B��G�	��H�H�]�#��H�H�x��	�	�{�"�-�.��d�l�l�+�K��3�Z�����A�3� ��q�3�t�y�y�>�1�A��E�S����^�3K�L�A��H�H�q�A�O����a��� K�L�M�M������	 �����57���w����58��s
�C$E�E)r rrrrr)rPN)rr]rz(Sequence[int] | bytes | bytearray | None�return�None)rg�!Sequence[int] | bytes | bytearray)rrirgrh)rg�dict[tuple[int, ...], int])r(rjrgrh)rgr
)rgz-tuple[str, Sequence[int] | bytes | bytearray])rgr8)NN)rH�Image.Image | NonerIzException | Nonerg�intr)r'ztuple[int, ...]rHrkrgrl)raz
str | IO[str]rgrh)�__name__�59__module__�__qualname__�__firstlineno__�__doc__r�propertyr�setterr(r-r1r0�tostringrMrWre�__static_attributes__r>rrr
r
s���	��<@�&��&�:�&�60�	&�����
�^�^� �� ��	��	��]�]����	�	)���H�GK��'��3C��	��:%)�*"��*"�"�*"�61
�	*"�Xrr
c�@�[5nXlXlSUlU$)Nr)r
rrr)r�datars   r�rawrx�s���n�G��O��O��G�M��Nrc��US:Xa*[S5Vs/sHn[X-S-5PM sn$Sn[U5es snf)NrrArSz"unavailable when black is non-zero)r#rl�NotImplementedError)�black�whiter&r:s    r�make_linear_lutr}�sC����z�/4�S�z�:�z�!��E�I��$�%�z�:�:�62.�C�63�c�64"�"��;s�>c�n�[S5Vs/sHn[US-U-S-S-5PM sn$s snf)NrAg�o@g�?)r#rl)�expr&s  r�make_gamma_lutr��s6��=B�3�Z�H�Z��C�!�e�)��#�u�,�s�2�3�Z�H�H��Hs�!2c65��[[S[U5-55nUR5 [	XVs/sHo"[U5-PM sn5$s snf�NrA)rEr#r"�reverser
�rrr&s   r�negativer��sH���5��s�4�y��)�*�G��O�O����w�?�w�!�C��I�~�w�?�@�@��?s�A66c��SSKJn [S[U5-5Vs/sHo!"SS5PM
 nn[	X5$s snf)Nr)�randintrArS)�randomr�r#r"r
)rr��_rs    rr�r��s?���(-�c�C��I�o�(>�?�(>�1�w�q�#��(>�G�?���&�&��@s�?c	���[R"U5Vs/sHn[SU5PM nn[S[	S5Vs/sHo2US-US-PM sn5$s snfs snf)NrrPirR)r	�getrgbr}r
r#)r|�band�bandsr&s    r�sepiar��sb��2<�2C�2C�E�2J�K�2J�$�_�Q��
%�2J�E�K���e�G�n�M�n��a�!�e��Q�!�V� 4�n�M�N�N��
L��Ms�A"�A'67c68��[[S[U5-55n[XVs/sHo"[U5-PM sn5$s snfr�)rEr#r"r
r�s   r�wedger�s>���5��s�4�y��)�*�G���w�?�w�!�C��I�~�w�?�@�@��?s�A69c�p�[US5n[R[R[R/nUH4nUR	S5 U"U5R5nU(a OM6 Sn[U5eSSS5 U$![[4a Mcf=f!,(df   W$=f)N�rbrzcannot load palette)	r^rrr70�seek�71getpalette�SyntaxErrorr6�OSError)�filenamera�paletteHandlers�paletteHandler�lutr:s      r�loadr�s���72�h��	��
�+�+��-�-��#�#�
73�
	�.�N�
�����74�$�R�(�3�3�5�����	.�(�C��#�,���#75�0�J��
 ��,�
��
��%76�	�0�J�s/�5B&�.B�1B&�B#�B&�"B#�#B&�&77B5)rr]rwrirgr
)r{rlr|�floatrg�	list[int])rr�rgr�)rP)rr]rgr
)z#fff0c0)r|r]rgr
)r�r]rgztuple[bytes, str])�78__future__rr9�collections.abcr�typingr�rrr	r79�
TYPE_CHECKINGrr
rxr}r�r�r�r�r�r�r>rr�<module>r�s]��$#��$��H�H��
���r�r�r�#�I�A�'�O�80A�81r
codekingpro/portable-devtools · Team Ai