ó
    oñ:iû  ã                   ó–   • S SK Jr  S SKJr  SSKJr  S SKrSrSr\R                  " \5      r
\R                  " \5      r " S S	\5      rg)
é    )Ússtruct)ÚsafeEvalé   )ÚGlyphNzÇ
	>
	ppem:          H	# The PPEM for which this strike was designed (e.g., 9,
						# 12, 24)
	resolution:    H	# The screen resolution (in dpi) for which this strike
						# was designed (e.g., 72)
zz
	>
	glyphDataOffset:   L	# Offset from the beginning of the strike data record
							# to data for the individual glyph
c                   ó6   • \ rS rSrS	S jrS rS rS rS rSr	g)
ÚStrikeé   Nc                 ó6   • Xl         X l        X0l        0 U l        g )N)ÚdataÚppemÚ
resolutionÚglyphs)ÚselfÚrawdatar   r   s       Úd/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/fontTools/ttLib/tables/sbixStrike.pyÚ__init__ÚStrike.__init__   s   € ØŒ	ØŒ	Ø$ŒØˆ�ó    c                 óÈ  • U R                   c  SSKJn  UR                  e[	        U R                   5      [
        :  a0  SSKJn  UR                  S4[
        [	        U R                   5      4-  e[        R                  " [        U R                   S [
         U 5        [        R                  " SU R                   [
        [
        [        -    5      u  nU[
        -
  [        -  S-
  U l        / U l        [        U R                  S-   5       HZ  nU[        -  [
        -   n[        R                  " SU R                   XU[        -    5      u  nU R                  R                  U5        M\     [        U R                  5       H`  n[        U R                   U R                  U   U R                  US-       US9nUR!                  U5        XpR"                  UR$                  '   Mb     U ?U ?U ? g )Nr   ©ÚttLibz-Strike header too short: Expected %x, got %x.z>Lr   )r   Úgid)r   Ú	fontToolsr   Ú
TTLibErrorÚlenÚsbixStrikeHeaderFormatSizer   ÚunpackÚsbixStrikeHeaderFormatÚstructÚsbixGlyphDataOffsetFormatSizeÚ	numGlyphsÚglyphDataOffsetsÚrangeÚappendr   Ú	decompiler   Ú	glyphName)r   ÚttFontr   ÚfirstGlyphDataOffsetÚiÚstartÚcurrent_offsetÚcurrent_glyphs           r   r%   ÚStrike.decompile   sÆ  € Ø�9‰9ÑÝ'à×"Ñ"Ð"Üˆt�y‰y‹>Ô6Ó6Ý'ð × Ñ Ø?ðô ,¬S°·±«^Ð<ñ=ð =ô 	�ŠÜ" D§I¡IÐ.IÔ/IÐ$JÈDô	
ô
 #)§-¢-ØØ�I‰IÜ*Ô-GÜ/ñ.0ðó#
ÑÐ	ð !Ô#=Ñ=Ü*ñ+à-.ñ/ˆŒð !#ˆÔÜØ�N‰N˜QÑö
ˆAð Ô5Ñ5Ô8RÑRˆEÜ &§¢Ø�d—i‘i Ô0MÑ(MÐNó!Ñˆ^ð ×!Ñ!×(Ñ(¨Ö8ñ
ô �t—~‘~Ö&ˆAÜ!ØŸ	™	Ø×)Ñ)¨!Ñ,¨t×/DÑ/DÀQÈÁUÑ/Kðð ñ	ˆMð ×#Ñ# FÔ+Ø3@�K‰K˜×/Ñ/Ó0ñ 'ð Ð!ØˆNØ‰Ir   c                 óæ  • SU l         SU l        UR                  5       n[        [        [        U5      S-   -  -   nU H§  nX@R                  ;   a  U R                  U   nO	[        US9nUR                  U5        X5l	        U =R                  UR                  -  sl        U[        UR                  5      -  nU =R                   [        R                  " [        U5      -  sl         M©     [        5       nX6l	        U =R                   [        R                  " [        U5      -  sl         [        R                  " [        U 5      U l        U =R                  U R                   U R                  -   -  sl        g )Nr   r   )r&   )r"   Ú
bitmapDataÚgetGlyphOrderr   r    r   r   r   ÚcompileÚglyphDataOffsetr   r   ÚpackÚsbixGlyphDataOffsetFormatr   r   )r   r'   Ú
glyphOrderÚcurrentGlyphDataOffsetr&   r,   Údummys          r   r1   ÚStrike.compileW   s-  € Ø #ˆÔØˆŒà×)Ñ)Ó+ˆ
ô 'Ü+¬s°:«ÀÑ/BÑCñDð 	ó $ˆIØŸK™KÓ'à $§¡¨IÑ 6‘ô !&°	Ñ :�Ø×!Ñ! &Ô)Ø,BÔ)Ø�OŠO˜}×4Ñ4Ñ4�OØ"¤c¨-×*?Ñ*?Ó&@Ñ@Ð"Ø×!Ò!¤W§\¢\Ü)¨=ó&ñ ×!ñ $ô  “ˆØ 6ÔØ×Ò¤§¢Ô.GÈÓ!OÑOÕô —L’LÔ!7¸Ó>ˆŒ	à�	Š	�T×*Ñ*¨T¯_©_Ñ<Ñ<Ž	r   c                 óÀ  • UR                  S5        UR                  5         UR                  SU R                  S9  UR                  5         UR                  SU R                  S9  UR                  5         UR                  5       nU H2  nX@R                  ;   d  M  U R                  U   R                  X5        M4     UR                  S5        UR                  5         g )NÚstriker   )Úvaluer   )	ÚbegintagÚnewlineÚ	simpletagr   r   r0   r   ÚtoXMLÚendtag)r   Ú	xmlWriterr'   r5   r&   s        r   r?   ÚStrike.toXML{   s·   € Ø×Ñ˜8Ô$Ø×ÑÔØ×Ñ˜F¨$¯)©)ÐÑ4Ø×ÑÔØ×Ñ˜L°·±ÐÑ@Ø×ÑÔØ×)Ñ)Ó+ˆ
Û#ˆIØŸK™KÕ'Ø—‘˜IÑ&×,Ñ,¨YÖ?ñ $ð 	×Ñ˜Ô"Ø×ÑÕr   c                 óŒ  • US;   a  [        X[        US   5      5        g US:X  Ga  SU;   a  [        SUS   -   S-   5      nOS nSU;   a  [        SUS   -   S-   5      nO2SU;   a  [        SUS   -   S-   5      nOSS	KJn  UR	                  S
5      eSU;   a  [        US   5      nOSnSU;   a  [        US   5      n	OSn	[        UUUU	S9n
U HB  n[        U[        5      (       d  M  Uu  pnU
R                  XX45        U
R                  U5        MD     X R                  U
R                  '   g SS	KJn  UR	                  SU-  5      e)N)r   r   r;   ÚglyphÚgraphicTypez'''Ú	glyphnameÚnamer   r   zGlyph must have a glyph name.ÚoriginOffsetXÚoriginOffsetY)r&   rE   rH   rI   zcan't handle '%s' element)Úsetattrr   r   r   r   r   Ú
isinstanceÚtupleÚfromXMLr1   r   r&   )r   rG   ÚattrsÚcontentr'   ÚmyFormatÚmyGlyphNamer   Ú	myOffsetXÚ	myOffsetYr,   Úelements               r   rM   ÚStrike.fromXMLŠ   s^  € ØÐ)Ó)Ü�D¤¨¨w©Ó 8Õ9Ø�WŒ_Ø Ó%Ü# E¨E°-Ñ,@Ñ$@À5Ñ$HÓI‘à�Ø˜eÓ#Ü& u¨u°[Ñ/AÑ'AÀEÑ'IÓJ‘Ø˜5“Ü& u¨u°V©}Ñ'<¸uÑ'DÓE‘å+à×&Ñ&Ð'FÓGÐGØ %Ó'Ü$ U¨?Ñ%;Ó<‘	à�	Ø %Ó'Ü$ U¨?Ñ%;Ó<‘	à�	Ü!Ø%Ø$Ø'Ø'ñ	ˆMó #�Ü˜g¤u×-Ó-Ø+2Ñ(�D Ø!×)Ñ)¨$°wÔGØ!×)Ñ)¨&Ö1ñ	 #ð
 4A�K‰K˜×/Ñ/Ò0å'à×"Ñ"Ð#>ÀÑ#EÓFÐFr   )r/   r   r"   r   r!   r   r   )Nr   éH   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r%   r1   r?   rM   Ú__static_attributes__© r   r   r   r      s   † ôò6òp"=òHõ'Gr   r   )ÚfontTools.miscr   ÚfontTools.misc.textToolsr   Ú	sbixGlyphr   r   r   r4   Úcalcsizer   r    Úobjectr   r\   r   r   Ú<module>rb      sW   ðÝ "Ý -Ý Û ðÐ ðÐ ð %×-Ò-Ð.DÓEÐ Ø '× 0Ò 0Ð1JÓ KÐ ôYGˆVõ YGr   