图片翻转

前言

在开发中,有时候需要将图片翻转,可以使用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将图片翻转

相关推荐
indexsunny3 小时前
互联网大厂Java求职面试实战:Spring Boot微服务与Redis缓存场景解析
java·spring boot·redis·缓存·微服务·消息队列·电商
无心水3 小时前
【分布式利器:腾讯TSF】7、TSF高级部署策略全解析:蓝绿/灰度发布落地+Jenkins CI/CD集成(Java微服务实战)
java·人工智能·分布式·ci/cd·微服务·jenkins·腾讯tsf
28岁青春痘老男孩8 小时前
JDK8+SpringBoot2.x 升级 JDK 17 + Spring Boot 3.x
java·spring boot
方璧8 小时前
限流的算法
java·开发语言
元Y亨H8 小时前
Nacos - 服务注册
java·微服务
曲莫终8 小时前
Java VarHandle全面详解:从入门到精通
java·开发语言
一心赚狗粮的宇叔9 小时前
中级软件开发工程师2025年度总结
java·大数据·oracle·c#
奋进的芋圆9 小时前
DataSyncManager 详解与 Spring Boot 迁移指南
java·spring boot·后端
计算机程序设计小李同学9 小时前
个人数据管理系统
java·vue.js·spring boot·后端·web安全
小途软件10 小时前
用于机器人电池电量预测的Sarsa强化学习混合集成方法
java·人工智能·pytorch·python·深度学习·语言模型