
    c?1i!
                     t    d dl Z d dlZd dlmZ d Zd ZddZd Z G d d      Z	 G d d	      Z
d
 Zd Zd Zy)    Nc                     t        |       dk7  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   <   K   | ]  }d |cxk  xr dk  nc   yw)r      N ).0cs     b/home/www/therecruiter.miabetepe.com/venv/lib/python3.12/site-packages/pypdfium2/internal/utils.py	<genexpr>zcolor_tohex.<locals>.<genexpr>   s     ,qA}}},s   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    
5zQBCC,e,,:;; JAq!Q,1a|1aA,HGE 1:
 N    c                 P    t        | | t        t        | |            |             y N)setattrtypegetattr)structfnamecallbacks      r
   set_callbackr$      s"    FE94!79(CDr   c                      g }t        |      j                  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   J   K   | ]  }t        t        |d               y wr   )callabler    )r   r   bufs     r
   r   zis_stream.<locals>.<genexpr>(   s     @1xQ-.@s    #)setissubsetr   )r/   specmethodss   `  r
   	is_streamr4   !   sZ    Gt9s4y***
d{77
d{G9@@@@r   c                 z    | j                   }t        |      |z  j                  t        j                  |            S r   )contentsr   from_addressctypes	addressof)ptrsizeobjs      r
   
get_bufferr=   +   s0    
,,CI**F,<,<S,ACCr   c                       e Zd Zd Zd Zy)_buffer_readerc                     || _         y r   	py_bufferselfrB   s     r
   __init__z_buffer_reader.__init__2   	    "r   c                     t        ||      }| j                  j                  |       | j                  j                  |       yN   )r=   rB   r'   r*   )rD   _positionp_buf_firstr;   c_buffers         r
   __call__z_buffer_reader.__call__5   s5    k40H%)r   N__name__
__module____qualname__rE   rN   r   r   r
   r?   r?   0       #r   r?   c                       e Zd Zd Zd Zy)_buffer_writerc                     || _         y r   rA   rC   s     r
   rE   z_buffer_writer.__init__>   rF   r   c                     t        j                  |t        j                  t         j                              }t	        ||      }| j
                  j                  |       yrH   )r8   castPOINTERc_ubyter=   rB   r,   )rD   rJ   p_data_firstr;   rM   s        r
   rN   z_buffer_writer.__call__A   s@    {{<1OPlD1X&r   NrO   r   r   r
   rU   rU   <   rS   r   rU   c                     | j                  dt        j                        }| 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$   r?   m_Paramr]   )bufferfile_lenreaderto_holds       r
   get_bufreaderrh   H   sg    {{1bkk*H
KKN%%'FF~f'=>FN  #G7?r   c                 ^    t        j                  d      }t        |dt        |              |S )NrI   )version
WriteBlock)r`   FPDF_FILEWRITEr$   rU   )rd   writers     r
   get_bufwriterrn   W   s(    $$Q/F~f'=>Mr   c                     | syt        |       }t        j                  |z  | D cg c]  }|j                   c} }||fS c c}w )N)Nr   )r   r`   	FPDF_PAGEraw)pagescountpc_arrays       r
   pages_c_arrayrv   ]   sE    JE!!E)E,BqQUU,BCGE> -Cs   A )r   )r^   r8   pypdfium2.rawrq   r`   r   r$   r4   r=   r?   rU   rh   rn   rv   r   r   r
   <module>rx      sJ    
   (EAD
	 		 	r   