)EjddlmZddlmZmZddlmZddlm Z ddl m Z m Z m Z ddl mZmZmZddlmZddlmZdd lmZdd lZejd Zd Zd ZdZddZedkrdd l Z e j!ed Sd S))noRound)TTFontnewTable)otTables) OTTableWriter) HVAR_FIELDS VVAR_FIELDS _add_VHVAR)buildermodelsvarStore) fixedToFloat)makeOutputFileName)partialNzfontTools.varLib.avarc|d}i}|}|j}|D]}g}g} |j|g} | D]} || j| jdd} | |dz|dzdz} t| dksJ| d| d|nd| d<| d| d|nd| d<| | d| dz | |f||<d} || fS)Ngvarr) getGlyphOrder phantomIndex variationsgetappendaxes coordinateslen)fontaxisTags tableFieldsrvhAdvanceDeltasAndSupports glyphOrderr glyphNamesupportsdeltasrtvphantomsvOrigDeltasAndSupportss GC:\PYTHON\MyICR_Suite\python\Lib\site-packages\fontTools/varLib/hvar.py_get_advance_metricsr*sO zadd_HVAR..3;;; ;;;r+fvar)rrr*rr rrgetAdvanceMetricss r)add_HVARr:0s\ ~~ L;;f):;;;H 4dHkRRtX{,=>>>>>r+cd|vr|d=tt||t}d|djD}t ||t|dS)NVVARcg|] }|j Sr/r0r2s r)r5zadd_VVAR..<r6r+r7)rr*r rr r8s r)add_VVARr>8s\ ~~ L 4dHkRR;;f):;;;HtX{,=>>>>>r+c|ddl}|jdd}ddlm}ddlm}ddl}|dd}|d d d |d dtd| |}|dt|j }d|vrtddSt|d|vrt!||jt%|j dd}n|j}|r2td|||dSdS)z"Add `HVAR` table to variable font.Nrr) configLogger)DesignSpaceDocumentzfonttools varLib.hvarz'Add `HVAR` table from to variable font.) descriptionrz varfont.ttfzVariable-font file.)metavarhelpz-oz --output-filezOutput font file name.)typerDWARNING)levelr7zNot a variable font.vmtxTz.hvar) overWritesuffixz Saving %s)sysargv fontToolsr@fontTools.designspaceLibrAargparseArgumentParser add_argumentstr parse_argsrrlogerrorr:r> output_filerinfosave) argsrKr@rArOparseroptionsroutfiles r)mainr]@s | x|&&&&&&<<<<<<OOO  $ $=%F  > ()))q TNNN ~~"$W\T'RRR% g&&& 'r+__main__)N)"fontTools.misc.roundToolsrfontTools.ttLibrrfontTools.ttLib.tablesrotfontTools.ttLib.tables.otBaserfontTools.varLibrr r r r r fontTools.misc.fixedToolsrfi2flfontTools.misc.cliToolsr functoolsrlogging getLoggerrTr*r:r>r]__name__rKexitr/r+r)rms`------,,,,,,,,111111777777AAAAAAAAAA6666666666;;;;;;666666g/00>>>B??????++++\ zJJJ CHTTVVr+