我想将BufferedImage
旋转一个弧度角。我用下面的代码。 matrixImage
是一个整数矩阵,其中前景像素的值为1
,而背景像素的值为0
。新的BufferedImage
已正确旋转,但多余的边框为黑色。新图像比原始图像大,新零件为黑色。我希望新图像的所有背景像素均为白色。我尝试了Rotate BufferedImage and remove black bound提出的解决方案,但我注意到旋转过程中图像发生了变化。
bufferedImage = matrix2BufferedImage(matrixImage);
AffineTransform transform = new AffineTransform();
transform.rotate(radians,bufferedImage.getWidth() / 2,bufferedImage.getHeight() / 2);
AffineTransformOp op = new AffineTransformOp(transform,AffineTransformOp.TYPE_BILINEAR);
bufferedImage = op.filter(bufferedImage,null);