a
    —Æàg‚  ã                   @   sr   d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlZe d¡Zddd„Zdd	d
„ZdS )é    N©ÚmakeOutputFileName)ÚTTFont)ÚQu2CuPen)Ú
TTGlyphPenzfontTools.qu2cuc                 K   sæ   t | ƒ}t d| ¡ |d r i nd }||d |d j |d dœ}d|vsRJ dƒ‚| ¡ }| ¡ }|d	 }|D ]>}	||	 }
t|ƒ}t|fi |¤Ž}|
 |¡ |j	d
d�||	< qnd|d _
|d rÌt d|¡ t d|¡ | |¡ d S )NzConverting curves for %sÚ
dump_statsÚ
max_err_emÚheadÚ	all_cubic)ÚstatsZmax_errr
   ZgvarzCannot convert variable fontÚglyfT)ZdropImpliedOnCurvesé   z	Stats: %sz	Saving %s)r   ÚloggerÚinfoZ
unitsPerEmZgetGlyphSetZgetGlyphOrderr   r   ZdrawÚglyphZglyphDataFormatÚsave)Ú
input_pathÚoutput_pathÚkwargsÚfontr   Zqu2cu_kwargsZglyphSetZ
glyphOrderr   Z	glyphNamer   ZttpenZpen© r   úL/var/www/sistema_ama/venv/lib/python3.9/site-packages/fontTools/qu2cu/cli.pyÚ_font_to_cubic   s,    ý

r   c           	         s²  t jdd�}|jddtjd� |jdddd	d
� |jddddd� |jddtdddd� |jdddddd� | ¡ }|jddddd d!� |jd"d#dd$d%d!� | | ¡}|js²d&}n|jd'krÂd(}nd)}t	j
|d*� t|jƒd'krð|jrð| d+¡ |j�rJ|j‰ tj ˆ ¡�st ˆ ¡ ntj ˆ ¡�s4| d,ˆ  ¡ ‡ fd-d.„|jD ƒ}n"|j�r\|jg}nd/d.„ |jD ƒ}t|jdk|j|jd0�}t|j|ƒD ]\}}t||fi |¤Ž �q�dS )1z7Convert an OpenType font from quadratic to cubic curvesZqu2cu)Úprogz	--versionÚversion)Úactionr   Úinfilesú+ZINPUTz%one or more input TTF source file(s).)ÚnargsÚmetavarÚhelpz-vz	--verboseÚcountr   )r   Údefaultz-ez--conversion-errorÚERRORgü©ñÒMbP?z<maxiumum approximation error measured in EM (default: 0.001))Útyper   r"   r    z-cz--all-cubicFÚ
store_truez whether to only use cubic curves)r"   r   r    z-oz--output-fileNZOUTPUTz&output filename for the converted TTF.)r"   r   r    z-dz--output-dirZ	DIRECTORYz-output directory where to save converted TTFsÚWARNINGr   ÚINFOÚDEBUG)Úlevelz2-o/--output-file can't be used with multile inputsz'%s' is not a directoryc                    s"   g | ]}t j ˆ t j |¡¡‘qS r   )ÚosÚpathÚjoinÚbasename©Ú.0Úp©Ú
output_dirr   r   Ú
<listcomp>k   s   z_main.<locals>.<listcomp>c                 S   s   g | ]}t |d dd�‘qS )Tz.cubic)Z	overWriteÚsuffixr   r.   r   r   r   r3   q   s   ÿ)r   r   r
   )ÚargparseÚArgumentParserÚadd_argumentÚ	fontToolsÚ__version__ÚfloatÚadd_mutually_exclusive_groupÚ
parse_argsÚverboseÚloggingÚbasicConfigÚlenr   Zoutput_fileÚerrorr2   r*   r+   ÚexistsÚmkdirÚisdirÚdictZconversion_errorr
   Úzipr   )	ÚargsÚparserZoutput_parserÚoptionsr)   Zoutput_pathsr   r   r   r   r1   r   Ú_main-   sŠ    üúûûû



ÿ
þýrJ   )N)N)r*   r5   r>   ZfontTools.misc.cliToolsr   ZfontTools.ttLibr   ZfontTools.pens.qu2cuPenr   ZfontTools.pens.ttGlyphPenr   r8   Ú	getLoggerr   r   rJ   r   r   r   r   Ú<module>   s   

