
    f5j
                         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y)    Nc                     t        d | D              st        d      | \  }}}}|r||||fn||||f}d}d}|D ]  }	||	|z  z  }|dz  } |S )Nc              3   <   K   | ]  }d |cxk  xr dk  nc   yw)r      N ).0cs     N/var/www/html/qr/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         )all
ValueError)
colorrev_byteorderrgbachannelsc_colorshiftr   s
             r	   color_tohexr   	   s{    ,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74 67ABr   c                     |j                         D ]+  \  }}t        | | t        t        | |            |             - y r   )itemsr   r   r   )r   kwargsr    r!   s       r	   set_callbacksr&      s=    !<<> Gx;tGFE$:;HEFGr   c                      g }t        |      j                  t        d            sJ d|v r|dz  }d|v r|j                  d       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issubsetappendr   )r1   specmethodss   `  r	   	is_streamr7   #   sZ    Gt9s4y***
d{77
d{w@@@@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selfrE   s     r	   __init__z_buffer_reader.__init__4   	    "r   c                     t        ||      }| j                  j                  |       | j                  j                  |       yN   )r@   rE   r)   r,   )rG   _positionp_buf_firstr>   c_buffers         r	   __call__z_buffer_reader.__call__7   s5    k40H%)r   N__name__
__module____qualname__rH   rQ   r   r   r	   rB   rB   2   s    #r   rB   c                       e Zd Zd Zd Zy)_buffer_writerc                     || _         y r   rD   rF   s     r	   rH   z_buffer_writer.__init__@   rI   r   c                     t        j                  |t        j                  t         j                              }t	        ||      }| j
                  j                  |       yrK   )r;   castPOINTERc_ubyter@   rE   r.   )rG   rM   p_data_firstr>   rP   s        r	   rQ   z_buffer_writer.__call__C   s@    {{<1OPlD1X&r   NrR   r   r   r	   rW   rW   >   s    #r   rW   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"   rB   m_Paramr_   )bufferfile_lenreaderto_holds       r	   get_bufreaderrj   K   sg    {{1bkk*H
KKN%%'FF~f'=>FN  #G7?r   c                 ^    t        j                  d      }t        |dt        |              |S )NrL   )version
WriteBlock)rb   FPDF_FILEWRITEr"   rW   )rf   writers     r	   get_bufwriterrp   Z   s(    $$Q/F~f'=>Mr   c                 ^    | syt        |       }t        j                  |z  d | D         }||fS )N)Nr   c              3   4   K   | ]  }|j                     y wr   )raw)r   ps     r	   r
   z pages_c_array.<locals>.<genexpr>d   s     ,BqQUU,Bs   )lenrb   	FPDF_PAGE)pagescountc_arrays      r	   pages_c_arrayrz   `   s6    JE!!E),BE,BCGE>r   )r   )r`   r;   pypdfium2.rawrs   rb   r   r"   r&   r7   r@   rB   rW   rj   rp   rz   sizeof
FPDF_WCHARFPDF_WCHAR_sizer   r   r	   <module>r      sh    
   $CG
AD
	 	
 
  &-- 3 34r   