@Override
    public void paint(@NotNull Graphics2D g, double x, double y, double width, double height, Font font) {
      if (width > 0 && height > 0) {
        if (!Registry.is("ide.text.effect.new.metrics")) {
          drawLineCentered(g, x, y - height, width, height, 1, this);
        }
        else {
          if (font == null) font = g.getFont();
          LineMetrics metrics = font.getLineMetrics("", g.getFontRenderContext());
          double offset = PaintUtil.alignToInt(-metrics.getStrikethroughOffset(), g, RoundingMode.FLOOR);
          float strikeThroughThickness = metrics.getStrikethroughThickness();
          double thickness = PaintUtil.alignToInt(maybeScaleFontMetricsThickness(strikeThroughThickness, font), g, RoundingMode.FLOOR);
          if (strikeThroughThickness > 0 && thickness <= 0) {
            thickness = PaintUtil.devPixel(g);
          }
          drawLine(g, x, y - offset, width, thickness, this);
        }
      }
    }
@Override
    public void paint(@NotNull Graphics2D g, double x, double y, double width, double height, Font font)