Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 ia¡ã@s‚ddlZddlZddlmZmZmZmZGdd„dƒZdd„Zdd „Z d d „Z dd d„Z ddd„Z ddd„Z ddd„Zdd„ZdS)éNé)ÚGimpGradientFileÚGimpPaletteFileÚ ImageColorÚ PaletteFilec@sbeZdZdZddd„Zedd„ƒZejd d„ƒZd d „Zd d „Z dd„Z e Z ddd„Z dd„Z dS)Ú ImagePalettea Color palette for palette mapped images :param mode: The mode to use for the palette. See: :ref:`concept-modes`. Defaults to "RGB" :param palette: An optional palette. If given, it must be a bytearray, an array or a list of ints between 0-255. The list must consist of all channels for one color followed by the next color (e.g. RGBRGBRGB). Defaults to an empty palette. :param size: An optional palette size. If given, an error is raised if ``palette`` is not of equal length. ÚRGBNrcCsL||_d|_|ptƒ|_d|_|dkrHtjdtƒ|t|jƒkrHt dƒ‚dS)NrzOThe size parameter is deprecated and will be removed in Pillow 10 (2023-01-02).zwrong palette size) ÚmodeÚrawmodeÚ bytearrayÚpaletteÚdirtyÚwarningsÚwarnÚDeprecationWarningÚlenÚ ValueError)Úselfr r Úsize©rú1/tmp/tmp5hum_rxs/lib64/python/PIL/ImagePalette.pyÚ__init__'s zImagePalette.__init__cCs|jS)N)Ú_palette)rrrrr 5szImagePalette.palettecCsf||_t|jƒ}i|_xJtdt|jƒ|ƒD]4}t|j|||…ƒ}||jkrPq*|||j|<q*WdS)Nr)rrr ÚcolorsÚranger Útuple)rr Zmode_lenÚiÚcolorrrrr 9s  cCs<tƒ}|j|_|j|_|jdk r0|jdd…|_|j|_|S)N)rr r r r )rÚnewrrrÚcopyEs zImagePalette.copycCs |jr|j|jfS|j|jƒfS)z£ Get palette contents in format suitable for the low-level ``im.putpalette`` primitive. .. warning:: This method is experimental. )r r r Útobytes)rrrrÚgetdataPs zImagePalette.getdatacCs6|jrtdƒ‚t|jtƒr |jStjd|jƒ}|jƒS)zUConvert palette to bytes. .. warning:: This method is experimental. z!palette contains raw palette dataÚB)r rÚ isinstancer ÚbytesÚarrayr )rZarrrrrr [s  zImagePalette.tobytescCsØ|jrtdƒ‚t|tƒ�rÂ|jdkrJt|ƒdkrh|ddkrh|dd…}n|jdkrht|ƒdkrh|d7}y |j|Stk �r¾}�z,t|jt ƒs t |jƒ|_ t|jƒd}f}|rÎ|j j dƒ|j j d ƒf}x||krâ|d 7}qÐW|d k�rF|�r2x}y|jd|j |›�ƒWq~t k rº|jd ƒYq~Xq~W|jdƒqJW|j ƒd S) zVSave palette to text file. .. warning:: This method is experimental. z!palette contains raw palette dataÚwz # Palette z# Mode: Ú r)rú z 0N) r rr#ÚstrÚopenÚwriter rrr Ú IndexErrorÚclose)rÚfprÚjrrrÚsavežs    (zImagePalette.save)rNr)N)Ú__name__Ú __module__Ú __qualname__Ú__doc__rÚpropertyr Úsetterrr!r Útostringr5r@rrrrrs        4rcCstƒ}||_||_d|_|S)Nr)rr r r )r Údatar rrrÚraw¸s rIcCs:g}|dkr2x(tdƒD]}|j||dƒqWnt‚|S)Nrr)r()rÚappendÚNotImplementedError)ZblackÚwhiteÚlutrrrrÚmake_linear_lutÄs rNcCs8g}x.tdƒD]"}|jt|d|ddƒƒqW|S)Nr)gào@gà?)rrJÚint)ÚexprMrrrrÚmake_gamma_lutÎs"rQrcs4ttdtˆƒƒƒ}|jƒtˆ‡fdd„|DƒƒS)Nr)csg|]}|tˆƒ‘qSr)r)Ú.0r)r rrú Øsznegative..)r.rrÚreverser)r r r)r rÚnegativeÕsrUcCsDddlm}g}x(tdt|ƒƒD]}|j|ddƒƒq"Wt||ƒS)Nr)Úrandintr)r()ÚrandomrVrrrJr)r rVr rrrrrWÛs  rWú#fff0c0cs0dd„tj|ƒDƒ‰td‡fdd„tdƒDƒƒS)NcSsg|]}td|ƒ‘qS)r)rN)rRZbandrrrrSåszsepia..rcs g|]}ˆ|d|d‘qS)r'r)rRr)ÚbandsrrrSæsr)r'i)rZgetrgbrr)rLr)rYrÚsepiaäsrZcs,ttdtˆƒƒƒ}tˆ‡fdd„|DƒƒS)Nr)csg|]}|tˆƒ‘qSr)r)rRr)r rrrSëszwedge..)r.rrr)r r r)r rÚwedgeésr[cCsvt|dƒ�b}xZtjtjtjgD]>}y |jdƒ||ƒjƒ}|r@PWqttfk rZYqXqWtdƒ‚WdQRX|S)NÚrbrzcannot load palette) r:rrrÚseekZ getpaletteÚ SyntaxErrorrÚOSError)Úfilenamer>ZpaletteHandlerrMrrrÚloadîs     ra)r)r)rX)r)r%rÚrrrrrrIrNrQrUrWrZr[rarrrrÚs