Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 ia3ã@sªdZddlZddlmZddlmZmZddlmZ dZ dZ dZ d Z d Zd Zd Zd ZdZd Zd ZdZdZdZdZd ZdZdZdZdZdZdZd Z dZ!dZ"d Z#e Z$e"Z%e"eBZ&e#Z'e#eBZ(eZ)e!Z*e e Be BeBZ+eZ,eZ-eZ.eZ/e Z0e Z1eZ2eeBZ3eZ4eeBZ5eeBZ6eeBZ7eeBZ8eeBZ9eeBZ:dZ;dZdZ?dZ@dZAd ZBd!ZCd"ZDd#ZEd$ZFGd%d&„d&ejƒZGd'd(„ZHd)d*„ZIejJeGjKeGeIƒejLeGjKeHƒejMeGjKd+ƒdS),aŠ A Pillow loader for .dds files (S3TC-compressed aka DXTC) Jerome Leclanche Documentation: https://web.archive.org/web/20170802060935/http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_compression_s3tc.txt The contents of this file are hereby released in the public domain (CC0) Full text of the CC0 license: https://creativecommons.org/publicdomain/zero/1.0/ éN)ÚBytesIOé)ÚImageÚ ImageFile)Úo32leiDDS éééiiii€i@iiii i@i€i é é@iDXT1iDXT3iDXT5ééééRéSéTéaébécc@s$eZdZdZdZdd„Zdd„ZdS)Ú DdsImageFileZDDSzDirectDraw SurfacecCs"tjd|jjdƒƒ\}}|dkr2tdt|ƒ›�ƒ‚|jj|dƒ}t|ƒdkrbtdt|ƒ›d�ƒ‚t|ƒ}tjd |jd ƒƒ\}}}||f|_d |_ tjd |jd ƒƒ\}} } tjd |jd ƒƒtjd|jdƒƒ\} } |jdƒ} tjd|jdƒƒ\}tjd|jdƒƒ}| t @�r†dd„t |ƒDƒ}d}|dk�r:||d7}nd|_ ||d|d|d7}dd3|j d|ddd4…ddffg|_ �n˜|d}d}| dk�rªd|_d}�nX| d k�rÂd!|_d"}�n@| d#k�rÚd$|_d%}�n(| d&k�rød'|_d(}d|_ �n | d)k�rð|d*7}tjd|jjdƒƒ\}|jjdƒ|ttfk�rLd+|_d(}d|_ n¢|tk�rhd'|_d(}d|_ n†|ttfk�r‚d,|_d-}nl|tk�r¢d,|_d5|jd/<d-}nL|tttfk�ràdd6|j dd7fg|_ |tk�rÜd8|jd/<dStd0|›�ƒ‚ntd1t| ƒ›�ƒ‚d2d9|j |||jffg|_ dS):Nzˆsz&DdsImageFile._open..Úr l~ÚRGBiÿiÿéÿÚrawrrsDXT1ZDXT1sDXT3ZDXT3rsDXT5ZDXT5ésBC5SZBC5SésDX10éZBC5ZBC7égš™™™™™@ÚgammazUnimplemented DXGI format zUnimplemented pixel format Zbcn)rréÿÿÿÿg]tÑEÝ?)rr)rrrg]tÑEÝ?)rr)ÚstructÚunpackÚfpÚreadÚOSErrorÚreprÚlenrÚ_sizeÚmodeÚDDPF_RGBÚ enumerateÚsizeZtileZ pixel_formatÚDXGI_FORMAT_BC5_TYPELESSÚDXGI_FORMAT_BC5_UNORMÚDXGI_FORMAT_BC5_SNORMÚDXGI_FORMAT_BC7_TYPELESSÚDXGI_FORMAT_BC7_UNORMÚDXGI_FORMAT_BC7_UNORM_SRGBÚinfoÚDXGI_FORMAT_R8G8B8A8_TYPELESSÚDXGI_FORMAT_R8G8B8A8_UNORMÚDXGI_FORMAT_R8G8B8A8_UNORM_SRGBÚNotImplementedError)ÚselfÚmagicZ header_sizeÚ header_bytesÚheaderÚflagsÚheightÚwidthZpitchÚdepthZmipmapsZpfsizeZpfflagsZfourccZbitcountÚmasksÚrawmodeZ data_startÚnZ dxgi_formatr r r$Ú_openqsŒ     *             zDdsImageFile._opencCsdS)Nr )rGÚposr r r$Ú load_seekÉszDdsImageFile.load_seekN)Ú__name__Ú __module__Ú __qualname__ÚformatZformat_descriptionrRrTr r r r$rmsXrc Cs |jddfkr td|j›d�ƒ‚|jttƒtdƒtttBtBtBt Bƒt|j ƒt|j ƒt|j |jdkrrdnddd ƒtd ƒtd ƒtd ƒd tdƒt|jdkr¶t nt ƒtd ƒt|jdkrÔdndƒtd ƒtd ƒtdƒt|jdk�rdnd ƒttƒtd ƒtd ƒtd ƒtd ƒƒ|jdk�rf|jƒ\}}}}tjd||||fƒ}tj||dd d f|jd |jddd …d dffgƒdS)Nr'rzcannot write mode z as DDSrr ér-r ré iÿiÿr(l~r)r)r8r4ÚwriteÚo32Ú DDS_MAGICÚ DDSD_CAPSÚ DDSD_HEIGHTÚ DDSD_WIDTHÚ DDSD_PITCHÚDDSD_PIXELFORMATrLrMÚDDS_RGBAr9ÚDDSCAPS_TEXTUREÚsplitrÚmergerÚ_saver;)Zimr2ÚfilenameÚrÚgÚbÚar r r$rgÍsÿ rgcCs|dd…dkS)NrsDDS r )Úprefixr r r$Ú_acceptñsrnz.dds)NÚ__doc__r0Úiorr&rrZ_binaryrr\r]r^r_r`rarbZDDSD_MIPMAPCOUNTZDDSD_LINEARSIZEZ DDSD_DEPTHZDDSCAPS_COMPLEXrdZDDSCAPS_MIPMAPZDDSCAPS2_CUBEMAPZDDSCAPS2_CUBEMAP_POSITIVEXZDDSCAPS2_CUBEMAP_NEGATIVEXZDDSCAPS2_CUBEMAP_POSITIVEYZDDSCAPS2_CUBEMAP_NEGATIVEYZDDSCAPS2_CUBEMAP_POSITIVEZZDDSCAPS2_CUBEMAP_NEGATIVEZZDDSCAPS2_VOLUMEZDDPF_ALPHAPIXELSZ DDPF_ALPHAZ DDPF_FOURCCZDDPF_PALETTEINDEXED8r9ZDDPF_LUMINANCEZ DDS_FOURCCZDDS_RGBrcZ DDS_LUMINANCEZDDS_LUMINANCEAZ DDS_ALPHAZDDS_PAL8ZDDS_HEADER_FLAGS_TEXTUREZDDS_HEADER_FLAGS_MIPMAPZDDS_HEADER_FLAGS_VOLUMEZDDS_HEADER_FLAGS_PITCHZDDS_HEADER_FLAGS_LINEARSIZEZ DDS_HEIGHTZ DDS_WIDTHZDDS_SURFACE_FLAGS_TEXTUREZDDS_SURFACE_FLAGS_MIPMAPZDDS_SURFACE_FLAGS_CUBEMAPZDDS_CUBEMAP_POSITIVEXZDDS_CUBEMAP_NEGATIVEXZDDS_CUBEMAP_POSITIVEYZDDS_CUBEMAP_NEGATIVEYZDDS_CUBEMAP_POSITIVEZZDDS_CUBEMAP_NEGATIVEZZ DXT1_FOURCCZ DXT3_FOURCCZ DXT5_FOURCCrCrDrEr<r=r>r?r@rArrgrnZ register_openrXZ register_saveZregister_extensionr r r r$Ú sŽ  `$