图片翻转

前言

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

相关推荐
Leinwin3 小时前
OpenClaw 多 Agent 协作框架的并发限制与企业化规避方案痛点直击
java·运维·数据库
薛定谔的悦3 小时前
MQTT通信协议业务层实现的完整开发流程
java·后端·mqtt·struts
enjoy嚣士3 小时前
springboot之Exel工具类
java·spring boot·后端·easyexcel·excel工具类
罗超驿4 小时前
独立实现双向链表_LinkedList
java·数据结构·链表·linkedlist
无限大64 小时前
职场逻辑03:3步搞定高效汇报,让领导看到你的价值
后端
盐水冰4 小时前
【烘焙坊项目】后端搭建(12) - 订单状态定时处理,来单提醒和顾客催单
java·后端·学习
凸头5 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun3141595 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
紫丁香5 小时前
AutoGen详解一
后端·python·flask
努力也学不会java5 小时前
【缓存算法】一篇文章带你彻底搞懂面试高频题LRU/LFU
java·数据结构·人工智能·算法·缓存·面试