o
    f                     @   sl   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mZ G dd deZdd Zd	d
 Zdd ZdS )    )Enum)PathN)	add_input	get_inputc                   @   s   e Zd ZdZdZdZdZdS )Unitsr            N)__name__
__module____qualname__PTMMCMIN r   r   L/home/ubuntu/webapp/venv/lib/python3.10/site-packages/pypdfium2/_cli/tile.pyr      s
    r   c                 C   sZ   |t ju r| S |t ju r| d S |t ju r| d d S |t ju r&| d d S td| )NH   gRQ@gffffff9@zInvalid unit type )r   r   r   r   r   
ValueError)valueunitr   r   r   units_to_pt   s   



r   c                 C   s   t | dd | jdddtdd | jdd	tdd
d | jddtddd | jdtddd | jdtddd | jddtjdd dd d S )NF)pagesz--outputz-oTz Target path for the new document)requiredtypehelpz--rowsz-rz!Number of rows (horizontal tiles))r   r   r   z--colsz-cz"Number of columns (vertical tiles)z--widthzTarget widthz--heightzTarget heightz--unitz-uc                 S   s   t |   S N)r   upper)stringr   r   r   <lambda>D   s    zattach.<locals>.<lambda>z1Unit for target width and height (pt, mm, cm, in))defaultr   r   )r   add_argumentr   intfloatr   r   )parserr   r   r   attach    sJ   
r%   c                 C   sT   t | j| j}t | j| j}t| }t|||| j| j}t	
|}|| j d S r   )r   widthr   heightr   pdfium_cFPDF_ImportNPagesToOnecolsrowspdfiumPdfDocumentsaveoutput)argswhsrc_pdfraw_destdest_pdfr   r   r   mainI   s   
r6   )enumr   pathlibr   pypdfium2.rawrawr(   pypdfium2._helpers_helpersr,   pypdfium2._cli._parsersr   r   r   r   r%   r6   r   r   r   r   <module>   s   )