
    j5j                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
  edd	      Zej                  Zej                  Zdd
Zy)z!Interface to pngquant executable.    )annotations)Path)PIPE)	ToolProbe)runpngquantz(\d+(\.\d+)*).*)programversion_regexc                    t        | d      5 }dddd| d| ddg}t        ||t        t        d	      }d
d
d
       j                  dk(  r|j	                  |j
                         y
y
# 1 sw Y   5xY w)zQuantize a PNG image using pngquant.

    Args:
        input_file: Input PNG image
        output_file: Output PNG image
        quality_min: Minimum quality to use
        quality_max: Maximum quality to use
    rbr   z--forcez--skip-if-largerz	--quality-z--F)stdinstdoutstderrcheckNr   )openr   r   
returncodewrite_bytesr   )
input_fileoutput_filequality_minquality_maxinput_streamargsresults          M/var/www/html/qr/venv/lib/python3.12/site-packages/ocrmypdf/_exec/pngquant.pyquantizer      s     
j$	 
V<m1[M*
 Td4uU
V A. 
V 
Vs   'A((A1N)r   r   r   r   r   intr   r   )__doc__
__future__r   pathlibr   
subprocessr   ocrmypdf._exec._prober   ocrmypdf.subprocessr   PROBEversion	availabler        r   <module>r*      s=    ( "   + #*4FG
--OO	/r)   