graphics2d图片旋转后出现黑边

LJ_liujue 2015-06-29 08:59:42
采用graphics2d.rotate实现图片90度旋转后效果如下:

实现的代码如下:
public static BufferedImage rotateImage(final BufferedImage bufferedimage,
final int degree) {
int w = bufferedimage.getWidth();
int h = bufferedimage.getHeight();
int type = bufferedimage.getColorModel().getTransparency();
BufferedImage img;
Graphics2D graphics2d;
(graphics2d = (img = new BufferedImage(h, w, type)).createGraphics())
.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2d.rotate(Math.toRadians(degree), w/2, h/2);
graphics2d.drawImage(bufferedimage, 0, 0, null);
graphics2d.dispose();
return img;
}

这是旋转的代码,写入文件的代码如下:
BufferedImage buffImg = null;
buffImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
buffImg.getGraphics().drawImage(srcImg.getScaledInstance(width, height, Image.SCALE_SMOOTH), 0, 0, width, height, null);
buffImg = rotateImage(buffImg, rotate);
ImageIO.write(buffImg, "JPEG", new File(distImgPath));


怎么去掉那个黑边,让图片完整的显示
下图是原图:
...全文
919 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
1000抢什么 2017-08-07
  • 打赏
  • 举报
回复
同问啊,旋转后,y轴可以正常铺满,x轴就只有旋转前的图片长度,没铺满
YCJ1996 2016-11-28
  • 打赏
  • 举报
回复
请问如何解决的
ShanRui_ 2016-04-22
  • 打赏
  • 举报
回复
今天我也遇到这个问题了,后来冷静想了想,是转出的图片格式问,PNG格式才能透明
小毛毛猪 2015-12-21
  • 打赏
  • 举报
回复
你怎么解决的啊
linxianglong315 2015-09-06
  • 打赏
  • 举报
回复
您好,我也想裁剪图片,您的黑边是怎么去掉的,还有就是转的时候,(我的图片和你的相反,原图是宽>高,让它反过来,旋转后发现高度给裁剪掉了一块,求解)她会裁剪掉一部分,怎么解决?
LJ_liujue 2015-06-30
  • 打赏
  • 举报
回复
问题已经解决。
LJ_liujue 2015-06-30
  • 打赏
  • 举报
回复
自己顶个,跪求大婶解答
内容概要:本文系统研究了虚拟同步发电机(VSG)在并网过程中的惯量-阻尼协同自适应控制策略,结合Simulink仿真与Matlab代码实现,深入探讨其对电网频率稳定的支撑作用。研究内容涵盖VSG的基本建模、双机并联条件下的功率精确分配、微电网黑启动过程、预同步控制技术、虚拟阻抗的引入及其对系统稳定性的影响,并通过根轨迹分析、调节系数对比等方法验证所提控制策略的有效性与鲁棒性。该工作为高比例新能源接入背景下的电力系统提供了增强惯性响应和动态稳定性的解决方案,并构建了一个完整的仿真验证平台。; 适合人群:具备电力系统分析、自动控制理论基础,熟悉Matlab/Simulink仿真环境,从事新能源并网、微电网控制、电力电子变换器控制及电力系统稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握虚拟同步发电机的核心运行机理与控制建模方法;② 实现VSG在并网、孤岛切换、黑启动等典型工况下的协同控制仿真;③ 分析惯量与阻尼自适应调控对系统频率动态响应的优化效果;④ 为相关课题研究、高水平论文复现或实际工程项目提供可扩展的仿真模型与技术支持。; 阅读建议:建议结合文中提供的Matlab代码与Simulink模型,逐步搭建仿真系统,重点理解控制策略的设计逻辑与参数整定方法,并通过改变负载扰动、并网时机、控制器增益等工况进行对比仿真,深入掌握系统稳定性分析的关键技术与优化路径。

67,535

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧