
    Mcg                         d dl mZ d dlmZ d dlZ ej
                  e      ZdZdZ	 G d de
      Z G d d	e      Z G d
 de      Zy)    )sstruct)safeEvalNz
  > # big endian
  height:       B
  width:        B
  horiBearingX: b
  horiBearingY: b
  horiAdvance:  B
  vertBearingX: b
  vertBearingY: b
  vertAdvance:  B
zX
  > # big endian
  height:   B
  width:    B
  BearingX: b
  BearingY: b
  Advance:  B
c                       e Zd Zd Zd Zy)BitmapGlyphMetricsc                    |j                  | j                  j                         |j                          t	        j
                  | j                  j                        d   D ]/  }|j                  |t        | |             |j                          1 |j                  | j                  j                         |j                          y )N   )value)
begintag	__class____name__newliner   	getformatbinaryFormat	simpletaggetattrendtag)selfwriterttFont
metricNames       d/var/www/html/bid-api/venv/lib/python3.12/site-packages/fontTools/ttLib/tables/BitmapGlyphMetrics.pytoXMLzBitmapGlyphMetrics.toXML!   s    //0!++DNN,G,GHKJZwtZ/HINN L 	dnn--.    c                 >   t        t        j                  | j                  j                        d         }|D ]c  }t        |t              s|\  }}}||v rt        |d         t        |       |<   9t        j                  d|| j                  j                         e y )Nr   r	   z&unknown name '%s' being ignored in %s.)setr   r   r   r   
isinstancetupler   varslogwarningr   )r   nameattrscontentr   metricNameselements          r   fromXMLzBitmapGlyphMetrics.fromXML*   s    '++DNN,G,GHKLGgu-#* D%{"#+E'N#;T
4 <NN++ r   N)r   
__module____qualname__r   r&    r   r   r   r       s    r   r   c                       e Zd ZeZy)BigGlyphMetricsN)r   r'   r(   bigGlyphMetricsFormatr   r)   r   r   r+   r+   ;   s    (Lr   r+   c                       e Zd ZeZy)SmallGlyphMetricsN)r   r'   r(   smallGlyphMetricsFormatr   r)   r   r   r.   r.   ?   s    *Lr   r.   )fontTools.miscr   fontTools.misc.textToolsr   logging	getLoggerr   r   r,   r/   objectr   r+   r.   r)   r   r   <module>r5      sZ    # -  g!
   6)( )+* +r   