图片翻转

前言

在开发中,有时候需要将图片翻转,可以使用Graphics2D将图片翻转

图片翻转

下列程序将图片顺时针翻转90度

java 复制代码
import java.awt.Graphics2D;

import java.awt.geom.AffineTransform;


import java.awt.image.BufferedImage;


import java.io.File;


import javax.imageio.ImageIO;


public class ImageRotate {


    public static void main(String[] args) throws Exception {


        // 读取原始图片


        BufferedImage srcImage = ImageIO.read(new File("d:/hello/1.jpeg"));


        // 创建一个新的BufferedImage对象,用于存储旋转后的图片


        BufferedImage destImage = new BufferedImage(srcImage.getWidth(), srcImage.getHeight(), srcImage.getType());


        // 获取Graphics2D对象


        Graphics2D graphics2D = (Graphics2D) destImage.getGraphics();


        // 创建一个新的AffineTransform对象,并设置其为旋转变换


        AffineTransform transform = new AffineTransform();


        transform.rotate(Math.toRadians(90), srcImage.getWidth() / 2, srcImage.getHeight() / 2);


        // 使用Graphics2D对象的drawImage方法,将原始图片按照旋转变换绘制到新的BufferedImage对象上


        graphics2D.drawImage(srcImage, transform, null);


        // 将旋转后的图片保存到文件


        ImageIO.write(destImage, "JPG", new File("d:/hello/dest.jpg"));


    }


}

原图片

翻转后图片

总结

可以使用Graphics2D将图片翻转

相关推荐
十六点五2 小时前
Java NIO的底层原理
java·开发语言·python
猿究院-赵晨鹤2 小时前
Java I/O 模型:BIO、NIO 和 AIO
java·开发语言
叽哥2 小时前
Kotlin学习第 5 课:Kotlin 面向对象编程:类、对象与继承
android·java·kotlin
叽哥2 小时前
Kotlin学习第 6 课:Kotlin 集合框架:操作数据的核心工具
android·java·kotlin
心月狐的流火号3 小时前
Spring Bean 生命周期详解——简单、清晰、全面、实用
java·spring
little_xianzhong3 小时前
步骤流程中日志记录方案(类aop)
java·开发语言
大鱼七成饱3 小时前
再也不怕 Rust Box<T>!这篇文章让你一看就懂
后端
Bunny02123 小时前
DockerCompose搭建MySQL集群+MongoDB集群+Redis集群+Elasticsearch集群等
后端
半桔3 小时前
【STL源码剖析】二叉世界的平衡:从BST 到 AVL-tree 和 RB-tree 的插入逻辑
java·数据结构·c++·算法·set·map