403Webshell
Server IP : 35.80.110.71  /  Your IP : 216.73.216.221
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64
User : ubuntu ( 1000)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/fontTools/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/fontTools/__pycache__/tfmLib.cpython-312.pyc
�

jke�7��:�dZddlmZddlmZmZmZdZee�ZdZ	de	�d�Z
de
�d	�Zde�d
�Zde�d�Z
ee
�Zee�Zee�Zee
�ZdZgd
�Zgd�Zgd�ZdZdZdZdZdZdZdZdZdZdZdZ dZ!Gd�de"�Z#Gd�d�Z$e%dk(�rddl&Z&e$e&jNd�Z(e)djUd�de(jV��de(jX��de(jZ��de(j\��de(j^��d e(j`��d!e(jb��d"e(jd��d#e(jf��d$e(jh��d%e(jj��d&e(jl��d'e(jn��d(e(jp��fD���e)e(�yy))u1Module for reading TFM (TeX Font Metrics) files.

The TFM format is described in the TFtoPL WEB source code, whose typeset form
can be found on `CTAN <http://mirrors.ctan.org/info/knuth-pdf/texware/tftopl.pdf>`_.

	>>> from fontTools.tfmLib import TFM
	>>> tfm = TFM("Tests/tfmLib/data/cmr10.tfm")
	>>>
	>>> # Accessing an attribute gets you metadata.
	>>> tfm.checksum
	1274110073
	>>> tfm.designsize
	10.0
	>>> tfm.codingscheme
	'TeX text'
	>>> tfm.family
	'CMR'
	>>> tfm.seven_bit_safe_flag
	False
	>>> tfm.face
	234
	>>> tfm.extraheader
	{}
	>>> tfm.fontdimens
	{'SLANT': 0.0, 'SPACE': 0.33333396911621094, 'STRETCH': 0.16666698455810547, 'SHRINK': 0.11111164093017578, 'XHEIGHT': 0.4305553436279297, 'QUAD': 1.0000028610229492, 'EXTRASPACE': 0.11111164093017578}
	>>> # Accessing a character gets you its metrics.
	>>> # “width” is always available, other metrics are available only when
	>>> # applicable. All values are relative to “designsize”.
	>>> tfm.chars[ord("g")]
	{'width': 0.5000019073486328, 'height': 0.4305553436279297, 'depth': 0.1944446563720703, 'italic': 0.013888359069824219}
	>>> # Kerning and ligature can be accessed as well.
	>>> tfm.kerning[ord("c")]
	{104: -0.02777862548828125, 107: -0.02777862548828125}
	>>> tfm.ligatures[ord("f")]
	{105: ('LIG', 12), 102: ('LIG', 11), 108: ('LIG', 13)}
�)�SimpleNamespace)�calcsize�unpack�unpack2a�
    >
    lf: h    # length of the entire file, in words
    lh: h    # length of the header data, in words
    bc: h    # smallest character code in the font
    ec: h    # largest character code in the font
    nw: h    # number of words in the width table
    nh: h    # number of words in the height table
    nd: h    # number of words in the depth table
    ni: h    # number of words in the italic correction table
    nl: h    # number of words in the ligature/kern table
    nk: h    # number of words in the kern table
    ne: h    # number of words in the extensible character table
    np: h    # number of font parameter words
z12.20Fz;
    >
    checksum:            L
    designsize:          �
z
    z
    codingscheme:        40p
z
    family:              20p
zm
    seven_bit_safe_flag: ?
    ignored:             x
    ignored:             x
    face:                B
zI
    >
    skip_byte: B
    next_char: B
    op_byte: B
    remainder: B
)�SLANT�SPACE�STRETCH�SHRINK�XHEIGHT�QUAD�
EXTRASPACE)�NUM1�NUM2�NUM3�DENOM1�DENOM2�SUP1�SUP2�SUP3�SUB1�SUB2�SUPDROP�SUBDROP�DELIM1�DELIM2�
AXISHEIGHT)�DEFAULTRULETHICKNESS�
BIGOPSPACING1�
BIGOPSPACING2�
BIGOPSPACING3�
BIGOPSPACING4�
BIGOPSPACING5����c���eZdZ�fd�Z�xZS)�TFMExceptionc�$��t�|�|�y�N)�super�__init__)�self�message�	__class__s  ��2/usr/lib/python3/dist-packages/fontTools/tfmLib.pyr-zTFMException.__init__�s���
����!�)�__name__�
__module__�__qualname__r-�
__classcell__)r0s@r1r)r)�s
���"�"r2r)c��eZdZd�Zd�Zd�Zy)�TFMc�&�|j|�yr+)�_read)r.�files  r1r-zTFM.__init__�s���
�
�4�r2c�X�d|j�d|j�d|jd�d�S)Nz	<TFM for z in z at �gzpt>)�family�codingscheme�
designsize)r.s r1�__repr__zTFM.__repr__�s8����K�K�=��4�$�$�%��4�?�?�1�%�S�
*�	
r2c��� �!�"�#�$�%�&�'�(�)�*�+�,�-�.�/�0�t|d�r|j��!n%t|d�5}|j��!ddd��!|_t	�!�t
krt
d��t��.tt�!�.��.jdkrt
d��t	�!��.jdzkrt
d��t�.�j�D]\}}|dks�t
d���.jd	krt
d
�.j�d����.j�.jdzkDs�.jd
kDr&t
d�.j�d�.j�d����.j dk(s-�.j"dk(s�.j$dk(s�.j&dk(rt
d���.j(dkDrt
dt(�d����.jd�.jz�.j�.jz
dzz�.j z�.j"z�.j$z�.j&z�.j*z�.j,z�.j(z�.j.zk7rt
d��d�.jz�.jz
���.jzdz�/�/�.j z�%�%�.j"z�"�"�.j$z�'�'�.j&z�*�*�.j*z�)�)�.j,z�$�$�.j(z�+�fd�� � �!fd��0�.�0fd�}� �!fd��&� �!fd��#� �!fd��(� �!fd�}� �!fd��-�,�/�0fd�}�%�&�,fd �}�"�#�,fd!�}	�'�(�,fd"�}
�$�-fd#�}�*fd$�}�!fd%�}
�)�,fd&�}�+fd'�}dF�!fd(�	�,t1t2dgt4z|�d)}�.jdz}i|_|t4k\r�tt2�!|d|�d}|j8d*kr:|j8d	z}|j8d	z}d+|d,zd-|zd.|d,zz|_t;�.jt4dzz
�D]#}td/|d*z�d0�||j6�d}�%nY|t<k\rtt>�!|d|�n;|t@k\rttB�!|d|�n|tDk\rttF�!|d|�tH|_%|jLjO�}|jQd1�rtR|_%n|jQd2�rtT|_%i|_+t;�.j.�D]|}d3|dz��}|dkr
tX|}nI|jJtRk(r|d4kr
tZ|d5z
}n$|jJtTk(r|d6krt\|d5z
}�,||�||jV��~i}d|_/d|_0�.j*dkDr�|
|d��}|jbd
k(r|jd|_/|
|�.j*dz
��}|jbd
k(r2d|_0d|jfz|jhz}|||j`<i|_5t;�.j�.jdz�D�]}�0|�dkDs�ix|jj|<}||�|d7<�&|�dkDr||�|d8<�#|�dkDr|	|�|d9<�(|�dkDr|
|�|d:<||�}|tlk(r��|tnk(r�-|�||<��|tpk(r�-|�|d;<��|trk(s��ix|d<<}t;d�D]G}�!||�|z}|d,k(s|dkDs�d=}|dk(rd>}n|dk(rd?}n|d	k(rd@}||�r|||<�C|||<�I��i|_:i|_;ty|j��D�]�\}}|
||��}|jbtzkDrd|jfz|jhz}|�.j*ks�T|
||��}|jbtzkDrn�|jft|k\rSd|jft|z
z|jhz}||�|jvj|i�|jd<n�|jf}|dk(s
|d5kDr|dAk7r|}n6dB}|dzdkDr|dCz
}|dDz
}|d	zdk7r|dCz
}|d,kDr|dEz
}|dz}|d,kDr�||jhf|jtj|i�|jd<|jbtzk\r��z||jbdzz
}|�.j*kr��I���y#1swY�	�+xYw)GN�read�rbzToo short input filerz0The file claims to have negative or zero length!�z(The file has fewer bytes than it claims!z'The subfile size: '{name}' is negative!r%zThe header length is only �!r$�zThe character code range z..z is illegal!z-Incomplete subfiles for character dimensions!�z
There are z extensible recipes!�u0Subfile sizes don’t add up to the stated totalc���d�|zzS�NrE�)�c�	char_bases �r1�	char_infozTFM._read.<locals>.char_info�s����	�A�
�&�&r2c�����|�Sr+rL�rMrO�datas ��r1�width_indexzTFM._read.<locals>.width_index�s����	�!��%�%r2c�^��|�jkxs|�jkDxs�|�dk(S)Nr)�bc�ec)rM�sizesrSs ��r1�noneexistentzTFM._read.<locals>.noneexistent�s,����u�x�x�<�F�1�u�x�x�<�F�;�q�>�Q�3F�Fr2c�&����|�dzdzS�Nr$�rLrQs ��r1�height_indexzTFM._read.<locals>.height_index�s����	�!��q�(�)�R�/�/r2c�&����|�dzdzSrZrLrQs ��r1�depth_indexzTFM._read.<locals>.depth_indexs����	�!��q�(�)�B�.�.r2c�&����|�dzdzS�Nr%rErLrQs ��r1�italic_indexzTFM._read.<locals>.italic_indexs����	�!��q�(�)�Q�.�.r2c�&����|�dzdzSr`rLrQs ��r1�tagzTFM._read.<locals>.tags����	�!��q�(�)�A�-�-r2c� ����|�dzS)Nr&rLrQs ��r1�	remainderzTFM._read.<locals>.remainder	s����	�!��q�(�)�)r2c�8��d��|�zz}�|d�dS�NrE�vrL)rM�r�
read_fixed�
width_baserSs  ���r1�widthzTFM._read.<locals>.width�(����Z�+�a�.�0�1�A��a��%�c�*�*r2c�8��d��|�zz}�|d�dSrgrL)rMri�height_baser\rjs  ���r1�heightzTFM._read.<locals>.height�(����[�<��?�2�3�A��a��%�c�*�*r2c�8��d��|�zz}�|d�dSrgrL)rMri�
depth_baser^rjs  ���r1�depthzTFM._read.<locals>.depthrmr2c�8��d��|�zz}�|d�dSrgrL)rMri�italic_baserarjs  ���r1�italiczTFM._read.<locals>.italicrqr2c� ��d��|�zzSrKrL)rM�
exten_baseres ��r1�extenzTFM._read.<locals>.extens����
�Y�q�\�1�2�2r2c���d�|zzSrKrL)�i�
lig_kern_bases �r1�lig_stepzTFM._read.<locals>.lig_steps����
��)�*�*r2c�D��t�}tt�|d|�|Sr+)rr�LIG_KERN_COMMAND)r|�commandrRs  �r1�lig_kern_commandz#TFM._read.<locals>.lig_kern_command"s#���%�'�G��$�d�1�2�h��8��Nr2c�,��d�|zz}�|d�dSrgrL)r|ri�	kern_baserjs  ��r1�kernzTFM._read.<locals>.kern's#����Y��]�#�A��a��%�c�*�*r2c���d�|zzSrKrL)r|�
param_bases �r1�paramzTFM._read.<locals>.param+s����
�Q��'�'r2c�B��td|�dt���|d|�}|dS)Nz>;�:r)r�FIXED_FORMAT)�index�key�obj�retrRs    �r1rjzTFM._read.<locals>.read_fixed.s-����B�s�e�1�\�N�3�T�%�&�\�3�G�C��q�6�Mr2���MBLr&�RI�RCEz>;HEADERz:lzTEX MATH SYzTEX MATH EX�	PARAMETER���rlrprtrw�
nextlarger�varchar�rep�top�mid�bot���/�LIG�>r+)@�hasattrrC�open�_data�len�
SIZES_SIZEr)rr�SIZES_FORMAT�lf�vars�items�lhrUrV�nw�nh�nd�ni�ne�nl�nk�npr�HEADER_FORMAT4�HEADER_SIZE4�extraheader�face�range�HEADER_SIZE3�HEADER_FORMAT3�HEADER_SIZE2�HEADER_FORMAT2�HEADER_SIZE1�HEADER_FORMAT1�VANILLA�fonttyper?�upper�
startswith�MATHSY�MATHEX�
fontdimens�BASE_PARAMS�
MATHSY_PARAMS�
MATHEX_PARAMS�right_boundary_char�left_boundary_char�	skip_byte�	next_char�op_bytere�chars�NO_TAG�LIG_TAG�LIST_TAG�EXT_TAG�	ligatures�kerning�sorted�	STOP_FLAG�	KERN_FLAG�
setdefault)1r.r;�fp�name�lengthrXrcrlrprtrwrzr~r�r�r��offset�rest�s�br|�scheme�lig_kern_map�cmdrirM�info�char_tagr��part�ligrNrOrRrsr^ryror\rvrar�r}r�rjrerWrkrSs1                               @@@@@@@@@@@@@@@@@@r1r:z	TFM._read�s	������4�� ��9�9�;�D��d�D�!�
!�R��w�w�y��
!���
��t�9�z�!��5�6�6��!����d�E�*��8�8�a�<��Q�R�R��t�9�u�x�x�!�|�#��I�J�J� ��K�-�-�/�	N�L�D�&���z�"�#L�M�M�	N��8�8�a�<��!;�E�H�H�:�Q�G�H�H��8�8�e�h�h��l�"�e�h�h��n��+�E�H�H�:�R����z��N��
��8�8�q�=�E�H�H��M�U�X�X��]�e�h�h�!�m��N�O�O��8�8�c�>���B�4�/C�D�E�E��8�8�
��h�h�
��x�x�%�(�(�"�Q�&�
(��h�h�
��h�h�	
�
�h�h�
��h�h�

��h�h�
��h�h�
��h�h�	
��h�h�

�
��Q�R�R�����L�5�8�8�+�	�����)�A�-�
� �5�8�8�+�� �5�8�8�+�
� �5�8�8�+��#�e�h�h�.�
�!�E�H�H�,�	�����)�
��%�(�(�*�
�
	'�	&�	G�	0�	/�	/�	.�	*�	+�	+�	+�	+�	3�	+�	�
	+�	(�	�
	�~��s�\�1�4�8������A�������\�!��>�4���=�$�?��B�D��y�y�2�~��I�I��M���I�I��N��!�!�a�%�L�4��7�2�U�1��6�]�B��	��5�8�8�l�a�&7�7�8�
Q����!�b�&���4�d�D�<L�<L�M�a�P��
Q�
�|�
#��N�D���M�4�8�
�|�
#��N�D���M�4�8�
�|�
#��N�D���M�4�8���
��"�"�(�(�*�����]�+�"�D�M�
�
�
�}�
-�"�D�M�����u�x�x��	8�A��q��s�e�$�D��A�v�"�1�~�����&�(�Q�"�W�$�Q��U�+�����&�(�Q�"�W�$�Q��U�+���u�Q�x��t���7�	8���#'�� �"&����8�8�a�<�"�8�A�;�/�C��}�}��#�+.�=�=��(�"�8�U�X�X��\�#;�<�C��}�}��#�*-��'��#�+�+�%��
�
�5��89��T�4�4�5���
��u�x�x����A��.� 	5�A��1�~��!�')�)��
�
�1�
�� %�a���W�
���?�Q�&�%+�A�Y�D��N��q�>�A�%�$)�!�H�D��M���?�Q�&�%+�A�Y�D��N��q�6���v�%����(�&/��l�L��O���)�)2�1��D��&���(�02�2�D��O�g�"�1�X�
5��#�E�!�H�q�L�1����6�T�A�X�#(�D� �A�v�',��!"�a��',��!"�a��',��+�D�1�01���
�04���
�
5�' 	5�D�������<�-�-�/�0�$	'�D�A�q�"�8�A�;�/�C��}�}�y�(��#�+�+�%��
�
�5���e�h�h�,�&�x��{�3���=�=�9�,���{�{�i�/��3�;�;��#:�;�c�m�m�K��HL�Q�����/�/��2�6�s�}�}�E��K�K����6�a�!�e��R��#$�C�"$�C� �1�u�q�y� #�s�
���5�L�C� �1�u��z� #�s�
��"#�a�%� #�s�
�� !�Q���#$�a�%� ��M�M�K����1�1�!�R�8����G�
�=�=�I�-���S�]�]�Q�&�&��?�e�h�h�,�$	'�}
!�
!�s�e6�6fN)r3r4r5r-rAr:rLr2r1r8r8�s���
�F'r2r8�__main__Nc#� K�|]}|���y�wr+rL)�.0�xs  r1�	<genexpr>r��s����
��
�
�s�z
tfm.checksum=ztfm.designsize=ztfm.codingscheme=z
tfm.fonttype=ztfm.family=ztfm.seven_bit_safe_flag=z	tfm.face=ztfm.extraheader=ztfm.fontdimens=ztfm.right_boundary_char=ztfm.left_boundary_char=ztfm.kerning=ztfm.ligatures=z
tfm.chars=)9�__doc__�typesr�fontTools.misc.sstructrrrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��UNREACHABLE�PASSTHROUGH�
ACCESSABLEr�r�r�r�r�r��	Exceptionr)r8r3�sys�argv�tfm�print�join�checksumr@r?r�r>�seven_bit_safe_flagr�r�r�r�r�r�r�r�rLr2r1�<module>r�sN��#�J"�<�<��� �l�
#�
����'��(���������
������
��������'����'����'����'�������
�$�
���	
��	
������
�
�	
��
����
���	��	�"�9�"�
R'�R'�j�z���

�c�h�h�q�k�
�C�	��	�	�
� ����~�.�!�#�.�.�!1�2�#�C�$4�$4�#5�6�����~�.��c�j�j�\�*�*�3�+B�+B�*C�D��C�H�H�:�&�"�3�?�?�"3�4�!�#�.�.�!1�2�*�3�+B�+B�*C�D�)�#�*@�*@�)A�B��s�{�{�m�,� �����0��S�Y�Y�K�(��
�	
��*
�#�J�3r2

Youez - 2016 - github.com/yon3zu
LinuXploit