
    ޺i                          S SK r S SKrS SKrS SKJr  S SKJr  S SKJr  S SK	J
r
  S SKr\R                  " S5      rS	S jrS	S jrg)
    N)makeOutputFileName)TTFont)Qu2CuPen)
TTGlyphPenzfontTools.qu2cuc                 4   [        U 5      n[        R                  SU 5        US   (       a  0 OS nUUS   US   R                  -  US   S.nSU;   a  [	        S5      eUR                  5       nUR                  5       nUS	   nU H@  n	Xi   n
[        U5      n[        U40 UD6nU
R                  U5        UR                  S
S9X'   MB     SUS   l        US   (       a  [        R                  SU5        [        R                  SU5        UR                  U5        g )NzConverting curves for %s
dump_stats
max_err_emhead	all_cubic)statsmax_errr   gvarzCannot convert variable fontglyfT)dropImpliedOnCurves   z	Stats: %sz	Saving %s)r   loggerinfo
unitsPerEm
ValueErrorgetGlyphSetgetGlyphOrderr   r   drawglyphglyphDataFormatsave)
input_pathoutput_pathkwargsfontr   qu2cu_kwargsglyphSet
glyphOrderr   	glyphNamer   ttpenpens                R/var/www/piano.thomer.com/venv/lib/python3.13/site-packages/fontTools/qu2cu/cli.py_font_to_cubicr'      s   *D
KK*J7&BDE,'$v,*A*AAK(L ~788!H##%J<D	#8$u--

3++$+?   $%DL lK'
KK[)IIk    c           	         [         R                  " SS9nUR                  SS[        R                  S9  UR                  SSSS	S
9  UR                  SSSSS9  UR                  SS[
        SSSS9  UR                  SSSSSS9  UR                  5       nUR                  SSSSS S!9  UR                  S"S#SS$S%S!9  UR                  U 5      nUR                  S::  a  UR                  S&5        UR                  (       d  S'nOUR                  S(:X  a  S)nOS*n[        R                  " US+9  [        UR                  5      S(:  a"  UR                  (       a  UR                  S,5        UR                   (       a  UR                   n["        R$                  R'                  U5      (       d  ["        R(                  " U5        O8["        R$                  R+                  U5      (       d  UR                  S-U-  5        UR                   Vs/ s H@  n["        R$                  R-                  U["        R$                  R/                  U5      5      PMB     nnODUR                  (       a  UR                  /nO%UR                   Vs/ s H  n[1        US.S/S09PM     nn[3        UR                  S:  UR                  UR4                  S19n[7        UR                  U5       H  u  p[9        X40 UD6  M     gs  snf s  snf )2z7Convert an OpenType font from quadratic to cubic curvesqu2cu)progz	--versionversion)actionr,   infiles+INPUTz%one or more input TTF source file(s).)nargsmetavarhelpz-vz	--verbosecountr   )r-   defaultz-ez--conversion-errorERRORgMbP?z<maxiumum approximation error measured in EM (default: 0.001))typer2   r5   r3   z-cz--all-cubicF
store_truez whether to only use cubic curves)r5   r-   r3   z-oz--output-fileNOUTPUTz&output filename for the converted TTF.)r5   r2   r3   z-dz--output-dir	DIRECTORYz-output directory where to save converted TTFsz,--conversion-error must be greater than zeroWARNINGr   INFODEBUG)levelz2-o/--output-file can't be used with multile inputsz'%s' is not a directoryTz.cubic)	overWritesuffix)r   r	   r   )argparseArgumentParseradd_argument	fontTools__version__floatadd_mutually_exclusive_group
parse_argsconversion_errorerrorverboseloggingbasicConfiglenr.   output_file
output_dirospathexistsmkdirisdirjoinbasenamer   dictr   zipr'   )argsparseroutput_parseroptionsr>   rP   poutput_pathsr   r   r   s              r&   _mainr`   .   s   $$'2F
Iy?T?TU
4	   k'1E
K   /   779M6   <   %G1$CD??	A	e$
7??aG$7$7IJ''
ww~~j))HHZ z**LL2Z?@CJ??
CRaBGGLLRWW%5%5a%89? 	 
 
		++, __
$ qDB$ 	 

 ??Q&++##F $'w#E
z9&9 $F#

s   AK'8K,)N)rQ   rA   rL   fontTools.misc.cliToolsr   fontTools.ttLibr   fontTools.pens.qu2cuPenr   fontTools.pens.ttGlyphPenr   rD   	getLoggerr   r'   r`    r(   r&   <module>rg      s<    	   6 " , 0  
		,	-@S:r(   