code: def get_dimension(text):
      
      (xmax, ymax, halign, valign, angle) = unaligned_get_dimension(text)
      xmin = ymin = 0
      if halign == 'C':
          xmin = -xmax / 2.0
          xmax = xmax / 2.0
      elif halign == 'R':
          xmin = -xmax
          xmax = 0
      if valign == 'M':
          ymin = -ymax / 2.0
          ymax = ymax / 2.0
      elif valign == 'T':
          ymin = -ymax
          ymax = 0
      if angle != 0:
          (x0, y0) = pychart_util.rotate(xmin, ymin, angle)
          (x1, y1) = pychart_util.rotate(xmax, ymin, angle)
          (x2, y2) = pychart_util.rotate(xmin, ymax, angle)
          (x3, y3) = pychart_util.rotate(xmax, ymax, angle)
          xmax = max(x0, x1, x2, x3)
          xmin = min(x0, x1, x2, x3)
          ymax = max(y0, y1, y2, y3)
          ymin = min(y0, y1, y2, y3)
          return (xmin, xmax, ymin, ymax)
      return (xmin, xmax, ymin, ymax)
docs: Return the bounding box of the <text>,
      assuming that the left-bottom corner
      of the first letter of the text is at (0, 0). This procedure ignores
      /h, /v, and /a directives when calculating the boundingbox; it just returns the
      alignment specifiers as a part of the return value. The return value is a
      tuple (width, height, halign, valign, angle).