Ë
    l×j   ã                   óˆ   — 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j                  d«      Zd	d„Zd	d„Zy)
é    N)ÚmakeOutputFileName)ÚTTFont)ÚQu2CuPen)Ú
TTGlyphPenzfontTools.qu2cuc                 ó"  — t        | «      }t        j                  d| «       |d   ri nd }||d   |d   j                  z  |d   dœ}d|v rt	        d«      ‚|j                  «       }|j                  «       }|d	   }|D ]D  }	||	   }
t        |«      }t        |fi |¤Ž}|
j                  |«       |j                  d
¬«      ||	<   ŒF d|d   _        |d   rt        j                  d|«       t        j                  d|«       |j                  |«       y )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                ú@/DATA/.local/lib/python3.12/site-packages/fontTools/qu2cu/cli.pyÚ_font_to_cubicr'      s  € Ü*Ó€DÜ
‡KKÐ*¨JÔ7à˜Ò&‰B¨D€EàØ˜,Ñ'¨$¨v©,×*AÑ*AÑAØ˜KÑ(ñ€Lð ~ÜÐ7Ó8Ð8Ø×ÑÓ!€HØ×#Ñ#Ó%€JØ‰<€DÛˆ	Ø˜Ñ#ˆÜ˜8Ó$ˆÜuÑ- Ñ-ˆØ
‰
3ŒØŸ+™+¸$˜+Ó?ˆˆYŠð  ð $%€DˆLÔ àˆlÒÜ‰K Ô'ä
‡KK˜[Ô)Ø‡IIˆkÕó    c           	      óÐ  — t        j                  d¬«      }|j                  ddt        j                  ¬«       |j                  dddd	¬
«       |j                  dddd¬«       |j                  ddt
        ddd¬«       |j                  ddddd¬«       |j                  «       }|j                  ddddd ¬!«       |j                  d"d#dd$d%¬!«       |j                  | «      }|j                  dk  r|j                  d&«       |j                  sd'}n|j                  d(k(  rd)}nd*}t        j                  |¬+«       t        |j                  «      d(kD  r|j                  r|j                  d,«       |j                   rÉ|j                   }t"        j$                  j'                  |«      st#        j(                  |«       n3t"        j$                  j+                  |«      s|j                  d-|z  «       |j                  D cg c]?  }t"        j$                  j-                  |t"        j$                  j/                  |«      «      ‘ŒA }}n?|j                  r|j                  g}n%|j                  D cg c]  }t1        |d.d/¬0«      ‘Œ }}t3        |j                  dkD  |j                  |j4                  ¬1«      }t7        |j                  |«      D ]  \  }	}
t9        |	|
fi |¤Ž Œ yc c}w c c}w )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ÚERRORgü©ñÒMbP?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¿  € ä×$Ñ$¨'Ô2€FØ
×Ñ˜¨I¼y×?TÑ?TÐÔUØ
×ÑØØØØ4ð	 ô ð ×Ñ˜˜k°'À1ÐÔEØ
×ÑØØÜØØØKð ô ð ×ÑØØØØØ/ð ô ð ×7Ñ7Ó9€MØ×ÑØØØØØ6ð ô ð ×ÑØØØØØ<ð ô ð ×Ñ Ó%€Gà×Ñ 1Ò$Ø‰ÐCÔDà?Š?Ø‰Ø	‰˜AÒ	Ø‰àˆÜ×Ñ˜eÕ$ä
ˆ7?‰?Ó˜aÒ G×$7Ò$7Ø‰ÐIÔJà×ÒØ×'Ñ'ˆ
Üw‰w~‰~˜jÔ)ÜH‰HZÕ Ü—‘—‘˜zÔ*ØL‰LÐ2°ZÑ?Ô@àCJÇ?Â?ó
ÙCR¸aŒBG‰GL‰L˜¤R§W¡W×%5Ñ%5°aÓ%8Õ9À?ð 	ñ 
ð 
×	Ò	Ø×+Ñ+Ð,‰ð —_’_ó
á$ô ˜q¨D¸ÖBØ$ð 	ð 
ô
 Ø—?‘? QÑ&Ø×+Ñ+Ø×#Ñ#ô€Fô $' w§¡¸Ö#EÑˆ
KÜz ;Ñ9°&Ó9ñ $Fùò#
ùò
s   Ç=AKÉ,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(   