docs: static BufferedImage convertImage (BufferedImage image) {
      switch (image.getType()) {
      case BufferedImage.TYPE_INT_ARGB_PRE:
        return image; // Already good to go
      case BufferedImage.TYPE_4BYTE_ABGR:
        image.coerceData(true); // Just premultiply the alpha and it's fine
        return image;
      }
  
      // Didn't know an easy thing to do, so create a whole new image in our preferred format
      BufferedImage convertedImage = new BufferedImage(image.getWidth(), image.getHeight(),
                                                       BufferedImage.TYPE_INT_ARGB_PRE);
      Graphics2D g = convertedImage.createGraphics();
      g.setColor(new java.awt.Color(0f, 0f, 0f, 0f));
      g.fillRect(0, 0, image.getWidth(), image.getHeight());
      g.drawImage(image, 0, 0, null);
      g.dispose();
  
      return convertedImage;
    }