code: public Img cut(int x, int y, int radius) {
  		final BufferedImage srcImage = getValidSrcImg();
  		final int width = srcImage.getWidth();
  		final int height = srcImage.getHeight();
  
  		// 计算直径
  		final int diameter = radius > 0 ? radius * 2 : Math.min(width, height);
  		final BufferedImage targetImage = new BufferedImage(diameter, diameter, BufferedImage.TYPE_INT_ARGB);
  		final Graphics2D g = targetImage.createGraphics();
  		g.setClip(new Ellipse2D.Double(0, 0, diameter, diameter));
  
  		if (this.positionBaseCentre) {
  			x = x - width / 2 + diameter / 2;
  			y = y - height / 2 + diameter / 2;
  		}
  		g.drawImage(srcImage, x, y, null);
  		g.dispose();
  		this.targetImage = targetImage;
  		return this;
  	}
docs: 图像切割为圆形(按指定起点坐标和半径切割)
  
  @param x 原图的x坐标起始位置
  @param y 原图的y坐标起始位置
  @param radius 半径，小于0表示填充满整个图片（直径取长宽最小值）
  @return this
  @since 4.1.15