Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 iaRã@s°ddlZddlZddlmZmZddlmZddlmZddlm Z ddlm Z dd d œZ e dƒd Z d d „Zdd„ZGdd„dejƒZejejeƒejejdƒdd„ZdS)éNé)ÚImageÚ ImageFile)Úi8)Úi16be)Úi32be)Úo8ÚrawÚjpeg)réécCstt|dd…ƒS)Nr éüÿÿÿ)Úi32ÚPAD)Úc©rú4/tmp/tmp5hum_rxs/lib64/python/PIL/IptcImagePlugin.pyÚi#srcCs,x |D]}tdt|ƒdd�qWtƒdS)Nz%02xú )Úend)Úprintr)rrrrrÚdump's rc@s4eZdZdZdZdd„Zdd„Zdd„Zd d „Zd S) Ú IptcImageFileZIPTCzIPTC/NAAcCst|j|ƒS)N)rÚinfo)ÚselfÚkeyrrrÚgetint7szIptcImageFile.getintcCs¬|jjdƒ}t|ƒsd S|d|df}|ddksL|ddksL|ddkrTtdƒ‚|d}|d krntd ƒ‚n6|d kr|d}n(|d kršt|jj|d ƒƒ}n t|dƒ}||fS) Nr rrééé zinvalid IPTC/NAA fileéé„z%illegal field length in IPTC/NAA fileé€)Nr)ÚfpÚreadÚlenÚ SyntaxErrorÚOSErrorrÚi16)rÚsÚtagÚsizerrrÚfield:s $  zIptcImageFile.fieldc Cs²xŒ|jjƒ}|jƒ\}}| s&|dkr(P|r:|jj|ƒ}nd}||jkr€t|j|tƒrj|j|j|ƒqŠ|j||g|j|<q||j|<qWt|jddƒ}t|jddƒ}d|jkrÔt|jddƒd}nd}|dkoä| �rðd|_ n6|dk�r |�r d ||_ n|d k�r&|�r&d ||_ |j dƒ|j dƒf|_ yt |j dƒ}Wn.t k �r|} ztdƒ| ‚WYdd} ~ XnX|dk�r®d||fdd|jd|jdffg|_dS)Néé r é<rréAÚLZRGBr ZCMYKéééxzUnknown IPTC image compressionÚiptc)r-r.)r r/)r r/)r r0)r r0)r r2)r r3)r r4)r-r.)r#Útellr,r$rÚ isinstanceÚlistÚappendrÚmoderÚ_sizeÚ COMPRESSIONÚKeyErrorr'r+Útile) rÚoffsetr*r+ÚtagdataZlayersZ componentÚidÚ compressionÚerrrÚ_openTs>       zIptcImageFile._openc Cs:t|jƒdks |jdddkr,tjj|ƒS|jd\}}}|\}}|jj|ƒtjdd�\}}tj |ƒ}|dkr‚|j d|j ƒxV|j ƒ\}} |d kršPx:| dkrÔ|jj t| d ƒƒ} | s¼P|j | ƒ| t| ƒ8} qœWq„W|jƒz*tj|ƒ�} | jƒ| j|_WdQRXWdytj|ƒWntk �r2YnXXdS) Nrrr5F)Útextr z P5 %d %d 255 r-r.i )r-r.)r%r>rÚloadr#ÚseekÚtempfileÚmkstempÚosÚfdopenÚwriter+r,r$ÚminÚcloserÚopenÚimÚunlinkr') rÚtyper>ZboxÚencodingr?Zo_fdÚoutfileÚor+r)Z_imrrrrF…s8        zIptcImageFile.loadN) Ú__name__Ú __module__Ú __qualname__ÚformatZformat_descriptionrr,rDrFrrrrr2s 1rz.iimcCsðddl}ddlm}m}d}t|tƒr,|jSt||jƒrT|jjdƒ}|rŒ|jdƒ}n8t||j ƒrŒy|j j |j }Wnt tfk rŠYnX|dkr˜dSGdd„dƒ}|ƒ}t|_i|_|j|ƒ|_y |jƒWnttfk rèYnX|jS) zÜ Get IPTC information from TIFF, JPEG, or IPTC file. :param im: An image containing IPTC data. :returns: A dictionary containing IPTC information, or None if no IPTC information block was found. rNr)ÚJpegImagePluginÚTiffImagePluginÚ photoshopic@s eZdZdS)zgetiptcinfo..FakeImageN)rVrWrXrrrrÚ FakeImage×sr])ÚioÚrZr[r7rrZ JpegImageFileÚgetZ TiffImageFiler*r@ZIPTC_NAA_CHUNKÚAttributeErrorr=Ú __class__ÚBytesIOr#rDÚ IndexError)rPr^rZr[Údatar\r]rrrÚ getiptcinfo³s4       rf)rJrHr_rrZ_binaryrrr(rrrr<rrrrZ register_openrYZregister_extensionrfrrrrÚs       |