Parse the AFM file in file object *fh*.
(self, fh: BinaryIO)
| 377 | class AFM: |
| 378 | |
| 379 | def __init__(self, fh: BinaryIO): |
| 380 | """Parse the AFM file in file object *fh*.""" |
| 381 | self._header = _parse_header(fh) |
| 382 | self._metrics, self._metrics_by_name = _parse_char_metrics(fh) |
| 383 | self._kern, self._composite = _parse_optional(fh) |
| 384 | |
| 385 | def get_str_bbox_and_descent(self, s: str) -> tuple[int, int, float, int, int]: |
| 386 | """Return the string bounding box and the maximal descent.""" |
nothing calls this directly
no test coverage detected