本文主要简述一下如何使用BufferedImage进行渐变色操作。

GradientPaint

java/awt/GradientPaint.java

public class GradientPaint implements Paint {Point2D.Float p1;Point2D.Float p2;Color color1;Color color2;boolean cyclic;//......
}    

这个是生成渐变色的关键类,当然也有其他的渐变类,比如
java/awt/LinearGradientPaint.java
实例

public static BufferedImage drawGradient(BufferedImage srcImg,

                                         int startX, int startY,int endX, int endY,Color colorFrom, Color colorTo,float opacity) {BufferedImage dstImg = new BufferedImage(srcImg.getWidth(), srcImg.getHeight(), BufferedImage.TYPE_INT_RGB);GradientPaint grad = new GradientPaint(startX, startY, colorFrom, endX, endY, colorTo); //从左上到右下渐变;Graphics2D g2 = (Graphics2D) dstImg.getGraphics();g2.setPaint(grad);g2.fillRect(startX, startY, endX, endY);g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, opacity));g2.drawImage(srcImg, 0, 0, srcImg.getWidth(), srcImg.getHeight(), null);g2.dispose();return dstImg;
}

原理就是先使用GradientPaint画一个渐变色的矩形,然后将原图使用一定透明度覆盖上去,这样就看出渐变。
不足之后的话,就是渐变颜色会偏淡。

欢迎加入学习交流群569772982,大家一起学习交流。

使用BufferedImage进行渐变色操作相关推荐

  1. java bufferedimage颜色_使用BufferedImage进行渐变色操作

    序 本文主要简述一下如何使用BufferedImage进行渐变色操作. GradientPaint java/awt/GradientPaint.java public class GradientP ...

  2. java graphics 渐变色_使用BufferedImage进行渐变色操作

    序 本文主要简述一下如何使用BufferedImage进行渐变色操作. GradientPaint java/awt/GradientPaint.java public class GradientP ...

  3. ImageIo类常用方法以及图片操作

    ImageIo类常用方法以及图片操作 文章目录 ImageIo类常用方法以及图片操作 常用方法 图片操作 结尾 常用方法 读 从图中可以看到有三个重载的方法,返回的类型都是BufferedImage ...

  4. 01超精美渐变色动态背景完整示例【CSS动效实战(纯CSS与JS动效)】

    若是大一学子或者是真心想学习刚入门的小伙伴可以私聊我,若你是真心学习可以送你书籍,指导你学习,给予你目标方向的学习路线,无套路,博客为证. 本节案例如下(其他动效篇幅原因逐步讲解,欢迎三连): 一.线 ...

  5. java drawstring 绘制歌词_Java模仿Kugou,实现歌词秀

    请到这个地方获取可运行的jar包及源码:http://neighborwolf.iteye.com/admin/blogs/1170037 Kugou的歌词秀如图: 我模拟的效果如图所示. 鼠标选中后 ...

  6. Java 比较图片_Java图片比对

    在自动化测试中,除了普通的值验证,经常还有一些图片验证,比如图片的匹配率,输出图片的差异图片等.本文主要用到了BufferedImage类来操作图片比对和输出差异图片,大体的思路如下: 1. 通过Im ...

  7. 简单图像滤镜功能的Java实现

    图像滤镜功能Java实现 前置内容 RGB图片: 对于图片中的像素, 使用Red, Green, Blue 三种颜色共同得到一个最终的显示颜色, 其数值均在0 - 255 之间 在Java中对于图像的 ...

  8. 软键盘实例 request参数修改

    软键盘实例 request参数修改 这里的键盘 里面的内容是乱序的,每次请求都会不一样的顺序. 键盘内容是一个DIV的背景图,方框是DIV边框.控制按钮直接在前台控制就行. 请求流程如下 JSP请求软 ...

  9. Java splash screen

    虽然Java的启动速度有很大改观,但大型桌面应用的启动通常需要相当长的时间.NetBeans和Eclipse的启动都有一个所谓splashscreen来让用户耐心等待.做splashscreen方法很 ...

最新文章

  1. 衡量微型计算机的性能指标参数有哪些,衡量计算机性能的主要技术指标有哪些?...
  2. 【C语言编程练习】5.10寻找水仙数
  3. keras、tf、numpy实现logloss对比
  4. mysql录入foreigen错误_编译安装MySQL5.6失败的相关问题解决方案
  5. OutLook2016修改注册表迁移.ost文件数据
  6. 考研心路历程2021北京交通大学计算机学院软件工程
  7. 15-多容器复杂应用的部署
  8. pytorch查缺补漏
  9. L1-026. I Love GPLT-PAT团体程序设计天梯赛GPLT
  10. python简明教程_05
  11. POI实现EXCEL导出(resources配置路径下或者网络图片)
  12. 吴恩达《机器学习》第四章:多元线性回归
  13. 旷视face++WebAPI接口调用
  14. 一个变量命名神器:支持中文转变量名
  15. 担心数据丢失 or 系统备份? Win10系统备份还原轻松学会
  16. 智力题库软件测试,最新软件测试笔试题网友回忆版
  17. **51单片机交通灯画图打板历程**
  18. 莱布尼兹乘积微分公式证明纠错
  19. 百度世界大会2021: 与时代共振,AI让生活更好
  20. 利用 Logarithmic Binning (Log-Binning)方法绘制幂律分布(Power-law Distributions)曲线

热门文章

  1. linux卸载nomachine,NoMachine 安装与配置及使用
  2. 全国高中计算机大赛,2019年含金量最大的中小学全国性竞赛活动——五大学科竞赛...
  3. python画同心圆程序_Python Turtle:使用circle()方法绘制同心圆
  4. mysql 5.7 window x64_window环境配置Mysql 5.7.21 windowx64.zip免安装版教程详解
  5. nedc和epa续航里程什么意思_400公里已成续航新起点,纯电动车的实用性到底怎样...
  6. java中兴参与实参相同_中兴通讯_传输SDH试题(含答案)
  7. C语言从来都没有过时,你大爷终究是你大爷
  8. Spring异步调用原理及SpringAop拦截器链原理
  9. 变形监测期末复习_寒假即将来临,中小学期末考试时间是什么时候?
  10. js map对象遍历_何时使用 Map 来代替变通的 JS 对象