Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 iaL-ã@s¤ddlZddlZddlZddlZddlmZmZmZmZej dƒZ e rRddlm Z dZ dZ dd„Zd d „Zd d „Zd d„Zdd„ZGdd„dƒZGdd„dejƒZdd„Zdd„Zejejeeƒejejdƒejejeƒejejdƒedk�r eejƒdk�redƒej ƒe!ejddƒ�tZ"ee"ƒZ#x(e#j$d D]Z%e%e#_%e#j&d!e%ƒ�q4sI)ÚstructÚunpackÚreadÚ HEADERSIZE)Úfobj©r ú4/tmp/tmp5hum_rxs/lib64/python/PIL/IcnsImagePlugin.pyÚ nextheader#srcCsD|\}}|j|ƒ|jdƒ}|dkr,tdƒ‚t||d|df|ƒS)Nész'Unknown signature, expecting 0x00000000)Úseekr Ú SyntaxErrorÚread_32)r Ú start_lengthÚsizeÚstartÚlengthÚsigr r rÚread_32t's   rc Csv|\}}|j|ƒ|d|d|d|df}|d|d}||dkrr|j|ƒ}tjd||ddddƒ}�nütjd|dƒ}xìtdƒD]à} g} |} xˆ| dk�r|jdƒ} | s²P| d} | d@rò| d } |jdƒ} x4t| ƒD]}| j| ƒqÞWn| d} | j|j| ƒƒ| | 8} | dkr˜Pq˜W| dk�r>td t| ƒ›d �ƒ‚tjd |d j | ƒdd ddƒ}|j j |j | ƒqŠWd|iS)zn Read a 32bit RGB icon resource. Seems to be either uncompressed or an RLE packbits-like scheme. réééÚRGBÚrawNé€é}zError reading channel [z left]ÚLó) rr rÚ frombufferÚnewÚrangeÚappendrÚreprÚjoinÚimZputband)r rrrrÚ pixel_sizeÚsizesqZindatar)Zband_ixÚdataZ bytesleftZbyteÚ blocksizeÚiÚbandr r rr1s>        rcCsf|d}|j|ƒ|d|d|d|df}|d|d}tjd||j|ƒddddƒ}d|iS)Nrrrr!rÚA)rrr#r )r rrrr*r+r/r r rÚread_mk[s   r1c Csä|\}}|j|ƒ|jdƒ}|dd…dkrT|j|ƒtj|ƒ}tj|jƒd|iS|dd…dks||dd…dks||dkrØtsˆtd ƒ‚|j|ƒ|j|ƒ}t j |ƒ}t j |ƒ}tj|jƒ|j dkrÐ|jdƒ}d|iStd ƒ‚dS) Né rs‰PNG  ÚRGBArsÿOÿQs ‡ s jP ‡ zQUnsupported icon subimage format (rebuild PIL with JPEG 2000 support to fix this)z Unsupported icon subimage format)rr rZ PngImageFilerZ_decompression_bomb_checkrÚ enable_jpeg2kÚ ValueErrorÚioÚBytesIOrZJpeg2KImageFileÚmodeÚconvert) r rrrrrr)Z jp2kstreamÚfr r rÚread_png_or_jpeg2000es.            r;c@sÜeZdZd(defgd)defgd*defgd+defgd,d efgd-d efd efd efgd.defgd/defgd0defdefgd1defdefdefgd2defgd3defdefdefgi Zdd„Zdd „Z d!d"„Z d#d$„Z d4d&d'„Z d%S)5ÚIcnsFileérsic10rsic09ésic14sic08rsic13sic07sit32st8mké@sicp6é sic12é0sih32sh8mksicp5sil32sl8mkésic11sicp4sis32ss8mkcCs�i|_}||_t|ƒ\}}|tkr,tdƒ‚t}xZ||krŠt|ƒ\}}|dkrVtdƒ‚|t7}|t8}||f||<|j|tjƒ||7}q2WdS)z@ fobj is a file-like object as an icns resource znot an icns filerzinvalid block headerN) Údctr rÚMAGICrr rr6ÚSEEK_CUR)Úselfr rCrÚfilesizer.r-r r rÚ__init__¢s     zIcnsFile.__init__cCsHg}x>|jjƒD]0\}}x&|D]\}}||jkr|j|ƒPqWqW|S)N)ÚSIZESÚitemsrCr&)rFÚsizesrZfmtsÚfmtÚreaderr r rÚ itersizes·s   zIcnsFile.itersizescCs|jƒ}|stdƒ‚t|ƒS)NzNo 32bit icon resources found)rNrÚmax)rFrKr r rÚbestsizeÀszIcnsFile.bestsizecCsHi}x>|j|D]0\}}|jj|ƒ}|dk r|j||j||ƒƒqW|S)z Get an icon resource as {channel: array}. Note that the arrays are bottom-up like windows bitmaps and will likely need to be flipped or transposed in some way. N)rIrCÚgetÚupdater )rFrrCÚcoderMÚdescr r rÚ dataforsizeÆs  zIcnsFile.dataforsizeNc Cs†|dkr|jƒ}t|ƒdkr.|d|ddf}|j|ƒ}|jddƒ}|rL|S|jdƒjƒ}y|j|dƒWntk r€YnX|S)Nrrrr3rr0)rPÚlenrUrQÚcopyZputalphaÚKeyError)rFrZchannelsr)r r rÚgetimageÓs   zIcnsFile.getimage)r=r=r)r=r=r)r>r>r)r>r>r)rrr)rrr)r?r?r)r@r@r)rArAr)r@r@r)rBrBr)rBrBr)N) Ú__name__Ú __module__Ú __qualname__r;rr1rrIrHrNrPrUrYr r r rr<…s4           r<c@sBeZdZdZdZdZdd„Zedd„ƒZej dd„ƒZd d „Z d S) Ú IcnsImageFilea! PIL image support for Mac OS .icns files. Chooses the best resolution, but will possibly load a different size image if you mutate the size attribute before calling 'load'. The info dictionary has a key 'sizes' that is a list of sizes that the icns file has. ZICNSzMac OS icns resourcecCs\t|jƒ|_d|_|jjƒ|jd<|jjƒ|_|jd|jd|jd|jdf|_dS)Nr3rKrrr) r<ÚfpÚicnsr8rNÚinforPÚ best_sizer)rFr r rÚ_openøs   zIcnsImageFile._opencCs|jS)N)Ú_size)rFr r rrszIcnsImageFile.sizecCs¦|}||jdkr0t|ƒdkr0|d|ddf}||jdkr†t|ƒdkr†|ddkr†dd„|jdDƒ}||kr†|jd|j|ƒ}||jdkrœtdƒ‚||_dS) NrKrrrrcSs,g|]$}|d|d|d|df‘qS)rrrr )Ú.0rr r rú sz&IcnsImageFile.size..z2This is not one of the allowed sizes of this image)r`rVÚindexr5rc)rFÚvalueZ info_sizeZ simple_sizesr r rrs  cCs¦t|jƒdkr@|j|_|jd|jd|jd|jdf|_tjj|ƒ|jrd|jj|jkrddS|jƒ|jj|jƒ}|jƒ|j|_|j |_ |j|_|j ƒdS)Nrrrr) rVrrarÚloadr)Z load_preparer_rYr8Zload_end)rFr)r r rrhs zIcnsImageFile.loadN) rZr[r\Ú__doc__ÚformatZformat_descriptionrbÚpropertyrÚsetterrhr r r rr]ês  r]c Cs¸t|dƒr|jƒdddddddddœ}d d „|jjd gƒDƒ}i}xRt|jƒƒD]B}||krf||n |j||fƒ}tjƒ}|j |d ƒ|j ƒ||<qRWg} x2|j ƒD]&\} }||} | j | t | ƒ| d œƒq¦W|jtƒ|jtjdtdd„| Dƒƒƒƒ|jdƒ|jtjdtt | ƒtƒƒx6| D].} |j| dƒ|jtjdt| dƒƒ�q(WxD| D]<} |j| dƒ|jtjdt| dƒƒ|j| dƒ�q`Wt|dƒ�r´|jƒdS)za Saves the image as a series of PNG files, that are then combined into a .icns file. Úflushrr>iir@r?)sic07sic08sic09sic10sic11sic12sic13sic14cSsi|] }||j“qSr )Úwidth)rdr)r r rú Dsz_save..Z append_imagesZpng)ÚtyperÚstreamz>icss|]}|dVqdS)rNr )rdÚentryr r rú Xsz_save..sTOC rprrqN)ÚhasattrrmZ encoderinforQÚsetÚvaluesÚresizer6r7ÚsaveÚgetvaluerJr&rVÚwriterDrÚpackÚsumr ) r)r^ÚfilenamerKZprovided_imagesZ size_streamsrÚimageÚtempÚentriesrprqrrr r rÚ_save2sF         r�cCs|dd…tkS)Nr)rD)Úprefixr r rÚ_acceptksrƒz.icnsz image/icnsÚ__main__rz)Syntax: python3 IcnsImagePlugin.py [file]rÚrbrKzout-%s-%s-%s.pngzout.pngZwindows)*r6ÚosrÚsysÚPILrrrrZ check_codecr4rrDr rrrr1r;r<r]r�rƒZ register_openrjZregister_extensionZ register_saveZ register_mimerZrVÚargvÚprintÚexitÚopenr^Zimfr`rrxr)ÚplatformZ startfiler r r rÚsF   *  eH9