o
    h                     @   sL   d dl Z ddlmZ e jdkrd dlZd dlZd dlZd
ddZdd	 ZdS )    N   )ImagedarwinFc              
   C   s  |d u rt jdkratd\}}t| dg}| r5| \}}}	}
|d| d|	 d|	|  d|
|  g7 }t|d|g  t	|}|
  t| | r_||	| |
| f}|  |S |S t jdkrtj||\}}}td||d	d
|d d d d@ d}| r|\}}| \}}}	}
||| || |	| |
| f}|S tjjstdtj|\}}td||d	d|d d d}| r|| }|S )Nr   z.pngZscreencapturez-R,z-xwin32RGBrawZBGRr      z$Pillow was built without XCB supportZBGRX   r   )sysplatformtempfilemkstemposclose
subprocesscallr   openloadunlinkresizecoreZgrabscreen_win32	frombytescropZHAVE_XCBOSErrorZgrabscreen_x11)ZbboxZinclude_layered_windowsZall_screensZxdisplayfhfilepathargslefttoprightbottomimZ
im_resizedoffsetsizedataZx0Zy0 r(   U/var/www/html/magazine_api/magazine_env/lib/python3.10/site-packages/PIL/ImageGrab.pygrab   sT   

*




"
r*   c                  C   s~  t jdkrItd\} }t|  d| d ddddg}d	g}|D ]}|d
|g7 }q!t| d }t|j	dkrBt
|}|  t| |S t jdkrt
j \}}|dkrdd l}|d|d }	|d dkrx||	d  dd}
n||	d  dd}
|
d |
d S t|trdd l}||}|dkrddlm} ||S |dkrddlm} ||S d S td)Nr   z.jpgz,set theFile to (open for access POSIX file "z" with write permission)tryz4    write (the clipboard as JPEG picture) to theFilezend tryzclose access theFileZ	osascriptz-er   r   fileI   zutf-16le mbcs Zpngr   )PngImagePluginZDIB)BmpImagePluginz3ImageGrab.grabclipboard() is macOS and Windows only)r   r   r   r   r   r   r   r   statst_sizer   r   r   r   r   Zgrabclipboard_win32structunpack_fromdecodesplitindex
isinstancebytesioBytesIOr1   r2   ZPngImageFiler3   ZDibImageFileNotImplementedError)r   r   commandsscriptcommandr$   fmtr'   r6   ofilesr=   r2   r3   r(   r(   r)   grabclipboardK   sV   

	







rF   )NFFN)	r   r1   r   r   r   r   r   r*   rF   r(   r(   r(   r)   <module>   s   

/