Uname:Linux ip-10-0-5-176 6.8.0-1057-aws #60~22.04.1-Ubuntu SMP Wed May 27 08:16:59 UTC 2026 x86_64

403WebShell
403Webshell
Server IP : 3.111.61.48  /  Your IP : 216.73.216.67
Web Server : Apache
System : Linux ip-10-0-5-176 6.8.0-1057-aws #60~22.04.1-Ubuntu SMP Wed May 27 08:16:59 UTC 2026 x86_64
User : ubuntu ( 1000)
PHP Version : 8.2.31
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/python3/dist-packages/PIL/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/PIL/__pycache__/Jpeg2KImagePlugin.cpython-310.pyc
o

Z#�a�(�@s�ddlZddlZddlZddlmZmZGdd�d�Zdd�Zdd	�Zd
d�Z	Gdd
�d
ej�Z
dd�Zdd�Ze�
e
je
e�e�e
je�e�e
jgd��e�e
jd�dS)�N�)�Image�	ImageFilec@sJeZdZdZddd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�	BoxReaderz}
    A small helper class to read fields stored in JPEG2000 header boxes
    and to easily step into and read sub-boxes.
    ���cCs ||_|dk|_||_d|_dS)Nrr)�fp�
has_length�length�remaining_in_box)�selfrr	�r�7/usr/lib/python3/dist-packages/PIL/Jpeg2KImagePlugin.py�__init__s

zBoxReader.__init__cCs6|jr|j��||jkrdS|jdkr||jkSdS)NFrT)rr�tellr	r
)r�	num_bytesrrr
�	_can_read#s


zBoxReader._can_readcCs`|�|�s	td��|j�|�}t|�|kr"td|�dt|��d���|jdkr.|j|8_|S)NzNot enough data in headerzExpected to read z bytes but only got �.r)r�SyntaxErrorr�read�len�OSErrorr
)rr�datarrr
�_read_bytes-s
�
zBoxReader._read_bytescCs t�|�}|�|�}t�||�S�N)�struct�calcsizer�unpack)r�field_format�sizerrrr
�read_fields;s

zBoxReader.read_fieldscCs |j}|�|�}tt�|�|�Sr)r
rr�io�BytesIO)rrrrrr
�
read_boxes@s
zBoxReader.read_boxescCs |jr|j��|j|jkSdS)NT)rrrr
r	�rrrr
�has_next_boxEszBoxReader.has_next_boxcCs||jdkr|j�|jtj�d|_|�d�\}}|dkr&|�d�d}d}nd}||ks3|�||�s7td��|||_|S)	Nrrz>I4srz>Q��zInvalid header length)r
r�seek�os�SEEK_CURrrr)r�lbox�tbox�hlenrrr
�
next_box_typeKs

zBoxReader.next_box_typeN)r)�__name__�
__module__�__qualname__�__doc__rrrrr"r$r-rrrr
rs

rcCs*|�d�}t�d|�d}||�|d�}t�d|�\}}}}}}}	}	}	}	}
dg|
}dg|
}dg|
}
t|
�D]}t�d|dd|�\||<||<|
|<q:||||f}|
d	krq|
dd
@dkrkd}||fSd
}||fS|
dkr{d}||fS|
dkr�d}||fS|
dkr�d}||fSd}||fS)z�Parse the JPEG 2000 codestream to extract the size and component
    count from the SIZ marker segment, returning a PIL (size, mode) tuple.�z>Hrz>HHIIIIIIIIHNz>BBB�$�r�r&�I;16�L�LA�RGB��RGBA)rrr�unpack_from�range)r�hdr�lsiz�siz�rsiz�xsiz�ysiz�xosiz�yosiz�_�csiz�ssiz�xrsiz�yrsiz�ir�moderrr
�_parse_codestream`s:
�


*�
����rMcCs$|dkrd|d|d|SdS)z�Convert JPEG2000's (numerator, denominator, exponent-base-10) resolution,
    calculated as (num / denom) * 10^exp and stored in dots per meter,
    to floating-point dots per inch.r��
i'Nr)�num�denom�exprrr
�_res_to_dpi�s�rScCs�t|�}d}d}|��r,|��}|dkr|��}n|dkr(|�d�ddkr(d}|��sd}d}d}d}d}	|��r�|��}|dkrx|�d	�\}
}}}||
f}|d
kr\|d@dkr\d
}nX|d
krcd}nQ|dkrjd}nJ|dkrqd}nC|dkrwd}n<|dkr�|��}|��r�|��}
|
dkr�|�d�\}}}}}}t|||�}t|||�}|dur�|dur�||f}	n|��s�|��s:|dus�|dur�td��||||	fS)z�Parse the JP2 header box to extract size, component count,
    color space information, and optionally DPI information,
    returning a (size, mode, mimetype, dpi) tuple.Nsjp2hsftypz>4srsjpx z	image/jpxsihdrz>IIHBrr5r&r6r7r2r8r4r9r:r;sres srescz>HHHHBBzMalformed JP2 header)rr$r-r"rrSr)r�reader�header�mimetyper+rrL�bpc�nc�dpi�height�width�res�tres�vrcn�vrcd�hrcn�hrcd�vrce�hrce�hres�vresrrr
�_parse_jp2_header�sb�
���rfcsFeZdZdZdZdd�Ze�fdd��Zejdd��Zdd	�Z	�Z
S)
�Jpeg2KImageFile�JPEG2000zJPEG 2000 (ISO 15444)cCs\|j�d�}|dkrd|_t|j�\|_|_n+||j�d�}|dkr>d|_t|j�}|\|_|_|_}|dur=||jd<nt	d��|j
dusL|jdurPt	d	��d
|_d
|_d}d}z
|j�
�}t�|�j}Wn1ty�d}z|j��}|j�d
tj�|j��}|j�|�Wnty�d}YnwYnwdd
|j
d
|j|j|j||ffg|_dS)Nr:��O�Q�j2kr&�jP  
�
�jp2rYznot a JPEG 2000 filezunable to determine size/moderr�jpeg2k�rr)rr�codecrM�_sizerLrf�custom_mimetype�inforr�_reduce�layers�filenor(�fstat�st_size�	Exceptionrr'r �SEEK_END�tile)r�sigrUrY�fdr	�posrrr
�_open�sP

�


����
�zJpeg2KImageFile._opencs|jpt�jSr)rs�super�reducer#��	__class__rr
r��szJpeg2KImageFile.reducecCs
||_dSr)rs)r�valuerrr
r�s
cCs�|jrO|jrOd|j>}|d?}t|jd||�t|jd||�f|_|jd}|dd|j|j|dd|ddf}|dd|j|d|fg|_tj�|�S)Nrrr4r:rnr2)rzrs�intrrprtr�load)r�power�adjust�t�t3rrr
r�s
�
*zJpeg2KImageFile.load)r.r/r0�format�format_descriptionr~�propertyr��setterr��
__classcell__rrr�r
rg�s0
rgcCs |dd�dkp|dd�dkS)Nr:ri�rkr)�prefixrrr
�_accepts�r�cCs@|�d�rd}nd}|j}|�dd�}|�dd�}|�dd�}|�dd�}|�d	d�}	|	durCt|	ttf�r?td
d�|	D��sCtd��|�d
d�}
|�dd�}|�dd�}|�dd�}
|�dd�}|�dd�}d}t|d�r�z|�	�}Wnt
yd}Ynw|||||	|
|||
|||f|_t�
||dd|jd|fg�dS)N�.j2krjrl�offset�tile_offset�	tile_size�quality_mode�rates�quality_layerscSsg|]	}t|ttf��qSr)�
isinstancer��float)�.0�
quality_layerrrr
�
<listcomp>5s��z_save.<locals>.<listcomp>z,quality_layers must be a sequence of numbers�num_resolutionsr�codeblock_size�
precinct_size�irreversibleF�progression�LRCP�cinema_mode�norrurmrn)�endswith�encoderinfo�getr��list�tuple�all�
ValueError�hasattrrurx�
encoderconfigr�_saver)�imr�filename�kindrrr�r�r�r�r�r��	cblk_sizer�r�r�r�r|rrr
r�$s\
����	
��"r�)z.jp2r�z.jpcz.jpfz.jpxz.j2cz	image/jp2)r r(r�rrrrMrSrfrgr�r��
register_openr��
register_save�register_extensions�
register_mimerrrr
�<module>s"I"?P=
�

Youez - 2016 - github.com/yon3zu
LinuXploit