
    ϔ j$                         d dl Z d dlZd dlmZ d Zd Zd ZddZd Z	 G d d	          Z
 G d
 d          Zd Zd Zd Z ej        ej                  ZdS )    Nc                     t          |           dk    rt          d          t          d | D                       st          d          | \  }}}}|r||||fn||||f}d}d}|D ]}	||	|z  z  }|dz  }|S )N   z'Color must consist of exactly 4 values.c              3   6   K   | ]}d |cxk    odk    nc V  dS )r      N ).0cs     lC:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\pypdfium2/internal/utils.py	<genexpr>zcolor_tohex.<locals>.<genexpr>   s6      ,,qA}}}}}}}},,,,,,    zColor value exceeds boundaries.r         )len
ValueErrorall)
colorrev_byteorderrgbachannelsc_colorshiftr	   s
             r
   color_tohexr   	   s    
5zzQ DBCCC,,e,,,,, <:;;; JAq!Q,>1a||1aA,HGE  1:
Nr   c                 p    t          | | t          t          | |                    |                     d S N)setattrtypegetattr)structfnamecallbacks      r
   set_callbackr$      s7    FE94!7!799(CCDDDDDr   c                     |                                 D ]:\  }}t          | | t          t          | |                    |                     ;d S r   )itemsr   r   r    )r!   kwargsr"   r#   s       r
   set_callbacksr(       s]    !<<>> I Ix=tWVU%;%;==hGGHHHHI Ir   r   c                      g }t          |                              t          d                    sJ d|v r|g dz  }d|v r|dgz  }t           fd|D                       S )Nrwr   )seektellreadreadintowwritec              3   T   K   | ]"}t          t          |d                     V  #d S r   )callabler    )r   r   bufs     r
   r   zis_stream.<locals>.<genexpr>,   s7      @@1xQ--..@@@@@@r   )setissubsetr   )r3   specmethodss   `  r
   	is_streamr8   %   s    Gt99s4yy*****
d{ 87777
d{ G9@@@@@@@@@@r   c                 ~    | j         }t          |          |z                      t          j        |                    S r   )contentsr   from_addressctypes	addressof)ptrsizeobjs      r
   
get_bufferrA   /   s3    
,CII**F,<S,A,ACCCr   c                       e Zd Zd Zd ZdS )_buffer_readerc                     || _         d S r   	py_bufferselfrF   s     r
   __init__z_buffer_reader.__init__6       "r   c                     t          ||          }| j                            |           | j                            |           dS N   )rA   rF   r+   r.   )rH   _positionp_buf_firstr?   c_buffers         r
   __call__z_buffer_reader.__call__9   sB    k400H%%%)))qr   N__name__
__module____qualname__rI   rR   r   r   r
   rC   rC   4   s2        # # #    r   rC   c                       e Zd Zd Zd ZdS )_buffer_writerc                     || _         d S r   rE   rG   s     r
   rI   z_buffer_writer.__init__B   rJ   r   c                     t          j        |t          j        t           j                            }t	          ||          }| j                            |           dS rL   )r<   castPOINTERc_ubyterA   rF   r0   )rH   rN   p_data_firstr?   rQ   s        r
   rR   z_buffer_writer.__call__E   sI    {<1O1OPPlD11X&&&qr   NrS   r   r   r
   rX   rX   @   s2        # # #    r   rX   c                    |                      dt          j                  }|                      d           t          j                    }||_        t          |dt          |                      d |_        |j	        f}||fS )Nr   
m_GetBlock)
r+   osSEEK_ENDpdfium_cFPDF_FILEACCESS	m_FileLenr$   rC   m_Paramr`   )bufferfile_lenreaderto_holds       r
   get_bufreaderrk   M   sr    {{1bk**H
KKNNN%''FF~f'='=>>>FN #G7?r   c                 l    t          j        d          }t          |dt          |                      |S )NrM   )version
WriteBlock)rc   FPDF_FILEWRITEr$   rX   )rg   writers     r
   get_bufwriterrq   \   s4    $Q///F~f'='=>>>Mr   c                 f    | sdS t          |           }t          j        |z  d | D              }||fS )N)Nr   c              3   $   K   | ]}|j         V  d S r   )raw)r   ps     r
   r   z pages_c_array.<locals>.<genexpr>f   s$      ,B,BqQU,B,B,B,B,B,Br   )r   rc   	FPDF_PAGE)pagescountc_arrays      r
   pages_c_arrayrz   b   sE     wJJE!E),B,BE,B,B,BCGE>r   )r   )ra   r<   pypdfium2.rawrt   rc   r   r$   r(   r8   rA   rC   rX   rk   rq   rz   sizeof
FPDF_WCHARFPDF_WCHAR_sizer   r   r
   <module>r      s   
			               (E E EI I I
A A A AD D D
	 	 	 	 	 	 	 	
 
 
 
 
 
 
 
        &- 344r   