Ë
    £ehi  ã                   ód  — d Z ddlmZ ddlmZmZmZmZ ddlm	Z	 ddl
ZddlZddlmZ ddlmZ  ej"                  d«      Zd	„ d
fd„Zdd„Zedk(  r`ddlZ eej0                  «      dkD  r ej2                   e«       «       ddlZ ej2                   ej6                  «       j8                  «       yy)z:
Interpolate OpenType Layout tables (GDEF / GPOS / GSUB).
é    )ÚTTFont)ÚmodelsÚVarLibErrorÚload_designspaceÚload_masters)ÚInstancerMergerN)Údeepcopy)Úpformatz#fontTools.varLib.interpolate_layoutc                 ó   — | S ©N© ©Úss    úa/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/fontTools/varLib/interpolate_layout.pyú<lambda>r      s   € À€ ó    Fc                 ón  — t        | d«      rnddlm} |j                  | «      } t	        | «      }t
        j                  d«       t
        j                  d«       t        | |«      }t        ||j                     «      }t
        j                  dt        |«      «       |s?|j                  «       D ��	ci c]$  \  }}	||j                  |   j                  |	«      “Œ& }}}	t
        j                  dt        |«      «       t        j                  ||j                   «      }t
        j                  dt        |«      «       t        j"                  |j$                  «      }
d|
j&                  |j                     k(  sJ ‚t)        ||
|«      }t
        j                  d	«       |j+                  ||d
g«       |S c c}	}w )aé  
    Interpolate GPOS from a designspace file and location.

    If master_finder is set, it should be a callable that takes master
    filename as found in designspace file and map it to master font
    binary as to be opened (eg. .ttf or .otf).

    If mapped is False (default), then location is mapped using the
    map element of the axes in designspace file.  If mapped is True,
    it is assumed that location is in designspace's internal space and
    no mapping is performed.
    Úsourcesr   )ÚDesignSpaceDocumentzBuilding interpolated fontzLoading master fontszLocation: %szInternal location: %szNormalized location: %szBuilding interpolated tablesÚGPOS)ÚhasattrÚfontTools.designspaceLibr   Úfromfiler   ÚlogÚinfor   r	   Úbase_idxr
   ÚitemsÚaxesÚmap_forwardr   ÚnormalizeLocationÚinternal_axis_supportsÚVariationModelÚnormalized_master_locsÚmappingr   ÚmergeTables)ÚdesignspaceÚlocÚmaster_finderÚmappedr   ÚdsÚmaster_fontsÚfontÚnameÚvÚmodelÚmergers               r   Úinterpolate_layoutr1      s\  € ô ˆ{˜IÔ&Øå@à)×2Ñ2°;Ó?ˆä	˜+Ó	&€BÜ‡H�HÐ)Ô*ä‡H�HÐ#Ô$Ü ¨]Ó;€LÜ�L §¡Ñ-Ó.€Dä‡H�Hˆ^œW S›\Ô*ÙØADÇÁÃ×M±g°d¸Aˆt�R—W‘W˜T‘]×.Ñ.¨qÓ1Ñ1ÐMˆÑMÜ‡H�HÐ$¤g¨c£lÔ3Ü
×
"Ñ
" 3¨×(AÑ(AÓ
B€CÜ‡H�HÐ&¬°«Ô5ô ×!Ñ! "×";Ñ";Ó<€EØ�—‘˜bŸk™kÑ*Ò*Ð*Ð*ä˜T 5¨#Ó.€Fä‡H�HÐ+Ô,à
×Ñ�t˜\¨F¨8Ô4Ø€Kùó Ns   Â2)F1c                 óð  — ddl m} ddl}ddl}|j	                  dt
        j                  ¬«      }|j                  ddd¬	«       |j                  d
dt        dd¬«       |j                  dddd¬	«       |j                  ddddd¬«       |j                  | «      } | j                  s4t        j                  j                  | j                  «      d   dz   | _
         || j                  ¬«       d„ }i }| j                   D ]$  }|j#                  d«      \  }}	t%        |	«      ||<   Œ& t'        | j                  ||«      }
t(        j+                  d| j                  «       |
j-                  | j                  «       y)z>Interpolate GDEF/GPOS/GSUB tables for a point on a designspacer   )ÚconfigLoggerNz#fonttools varLib.interpolate_layout)ÚdescriptionÚdesignspace_filenameÚDESIGNSPACEzInput TTF files)ÚmetavarÚhelpÚ	locationsÚLOCATIONú+zAxis locations (e.g. wdth=120)r7   ÚtypeÚnargsr8   z-oz--outputÚOUTPUTz=Output font file (defaults to <designspacename>-instance.ttf)z-lz
--loglevelÚLEVELÚINFOz Logging level (defaults to INFO))r7   Údefaultr8   z-instance.ttf)Úlevelc                 óF   — | j                  dd«      j                  dd«      S )NÚ
master_ufoÚmaster_ttf_interpolatablez.ufoz.ttf)Úreplacer   s    r   r   zmain.<locals>.<lambda>g   s"   € �q—y‘y Ð/JÓK×SÑSØ�ó€ r   ú=zSaving font %s)Ú	fontToolsr3   ÚargparseÚsysÚArgumentParserÚmainÚ__doc__Úadd_argumentÚstrÚ
parse_argsÚoutputÚosÚpathÚsplitextr5   Úloglevelr9   ÚsplitÚfloatr1   r   r   Úsave)Úargsr3   rI   rJ   ÚparserÚfinderr'   ÚargÚtagÚvalr,   s              r   rL   rL   >   ss  € å&ÛÛà×$Ñ$Ø-Ü—L‘Lð %ó €Fð ×ÑØ¨Ð<Mð ô ð ×ÑØØÜØØ,ð ô ð ×ÑØØØØLð	 ô ð ×ÑØØØØØ/ð ô ð ×Ñ˜TÓ"€Dà�;Š;Ü—g‘g×&Ñ& t×'@Ñ'@ÓAÀ!ÑDÀÑVˆŒá�t—}‘}Õ%ñ€Fð €CØ�~‰~ò ˆØ—9‘9˜S“>‰ˆˆSÜ˜“:ˆˆCŠðô ˜d×7Ñ7¸¸fÓE€DÜ‡H�HÐ˜tŸ{™{Ô+Ø‡I�Iˆd�k‰kÕr   Ú__main__é   r   )rM   ÚfontTools.ttLibr   ÚfontTools.varLibr   r   r   r   ÚfontTools.varLib.mergerr   Úos.pathrR   ÚloggingÚcopyr	   Úpprintr
   Ú	getLoggerr   r1   rL   Ú__name__rJ   ÚlenÚargvÚexitÚdoctestÚtestmodÚfailedr   r   r   ú<module>rp      s�   ðñõ #ß PÓ PÝ 3Û Û Ý Ý à€g×ÑÐ=Ó>€ñ 8CÈ5ó +ó\4ðn ˆzÒÛá
ˆ3�8‰8ƒ}�qÒØˆ�‰‘“ÔÛà€C‡H�Hˆ_ˆW�_‰_Ó×%Ñ%Õ&ð r   