docstr: AFM file reader.
  
  Instantiating an object with a path name will cause the file to be opened,
  read, and parsed. Alternatively the path can be left unspecified, and a
  file can be parsed later with the :meth:`read` method.
docstr_tok: ["AFM","file","reader",".","Instantiating","an","object","with","a","path","name","will","cause","the","file","to","be","opened",",","read",",","and","parsed",".","Alternatively","the","path","can","be","left","unspecified",",","and","a","file","can","be","parsed","later","with","the",":","meth",":","`","read","`","method","."]
code: def __init__(self, path=None):
      """AFM file reader.
  
      Instantiating an object with a path name will cause the file to be opened,
      read, and parsed. Alternatively the path can be left unspecified, and a
      file can be parsed later with the :meth:`read` method."""
      self._attrs = {}
      self._chars = {}
      self._kerning = {}
      self._index = {}
      self._comments = []
      self._composites = {}
      if path is not None:
          self.read(path)
  
imports: import re
label_desc: Use image node_id 1 to create a new AFM object from inherited base classes: object with example: obj = AFM(path)