我试图将图像左右旋转90度。
但是由于某种原因,此过程的输出会导致损坏。
这是我的代码:
(它很时髦,但不需要太多的想象力就可以假装它的java)
void rotate(File file){
def image = ImageIO.read(file);
double theta = Math.PI / 2;
def w = image.width / 2;
def h = image.height / 2;
def transform = new AffineTransform();
transform.rotate(theta, h, w);
def op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR);
image = op.filter(image, null);
def name = file.getName();
def type = name.substring(name.lastIndexOf(".") + 1, name.length());
ImageIO.write(image,type,file);
}
原版的:
旋转:
最佳答案
如果您指的是颜色变化,请取出滤镜。如果我正确理解语法的话,那将给您带来负面印象。
每当我使用转换时,我都会关闭过滤器并手动处理。确实需要花费很多时间,但事实证明它们总是更有用。只是一个建议。