实现方式很多,可以用jdk原生api,也可以用框架,如jhlabs。

这里只介绍原生api实现。

代码如下

import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;import javax.imageio.ImageIO;public class Test {public static void main(String[] args) {try {BufferedImage src = ImageIO.read(new File("e:\\1.gif")); // 读入源图像int width = src.getWidth(); // 源图宽int height = src.getHeight(); // 源图高Image image = src.getScaledInstance((int) (width), (int) (height),Image.SCALE_DEFAULT);BufferedImage tag = new BufferedImage((int) (width),(int) (height), BufferedImage.TYPE_BYTE_GRAY);Graphics2D g = tag.createGraphics();g.drawImage(image, 0, 0, null);g.dispose();OutputStream out = new FileOutputStream("e:\\2.gif");ImageIO.write(tag, "GIF", out);out.close();} catch (IOException e) {e.printStackTrace();}}}

源图像如下:

单一颜色后:

代码很简单,读取一个图片信息,创一个图片信息,把色彩改为单色。

把图片修改为单色图片相关推荐

  1. 使用opencv按图片修改时间进行图片读取

    直接上代码,注释很详细 #include <sys/stat.h> #include <string> #include <algorithm> #include ...

  2. qt把正方形图片修改成圆形图片

    1.这种方式好用. QPixmap UBUserOnlineStatusWidget::PixmapToRound(const QPixmap &src, int radius) {     ...

  3. 怎么样调整图片大小?图片修改工具怎么用?

    怎么样调整图片大小?专业的图片修改工具可以节省很多时间,这里推荐使用压缩啦的图片改大小(在线修改图片尺寸大小工具-压缩图)功能,操作简单易上手,来看看怎么操作吧. 1.打开压缩图首页选择图片改大小. ...

  4. 搭建Android+QT+OpenCV环境,实现“单色图片着色”效果

    OpenCV是我们大家非常熟悉的图像处理开源类库:在其新版本将原本在Contrib分库中的DNN模块融合到了主库中,并且更新了相应文档.这样我们就能够非常方便地利用OpenCV实现一些属于DeepLe ...

  5. 大一期末作孽(python实现图片修改器)

    目录 前言 效果预览 项目结构 屏幕适应 控件随窗口变化 图片处理的工具类 图片处理的工具类的功能改变 单图模式下的图片处理 单图模式下的子线程方案 模式的切换 批量模式下的路径读取(路径队列)(生产 ...

  6. 【Android 文件管理】分区存储 ( 修改与删除图片文件 )

    文章目录 一.分区存储模式下使用 MediaStore 修改图片 二.分区存储模式下使用 MediaStore 删除图片 三.相关文档资料 Android 分区存储系列博客 : [Android 文件 ...

  7. Premiere Pro CC2017教程(二) 修改导入静态图片的时间

    导入静态图片修改时间: 导入静态图片默认是5秒,可以在首选项中设置.

  8. 【JavaScript】修改图片src属性切换图片

    今天做项目时其中一个环节需要用到js修改图片src属性切换图片,现在来记录一下 以下是示例: html <img src="/before.jpg" id="img ...

  9. 方便的图片修改Sql代码

    方便的图片修改Sql代码 strSql.Append("update UserTemplate set ");             strSql.Append("Ti ...

最新文章

  1. 801. 二进制中1的个数 【二进制的基本模板】
  2. python元组是数组吗,Python基础(4)——数组元组
  3. A站有一个页面需要PV统计 A站读写该数据 B站读该数据 需要数据同步
  4. 研究生学习阶段时间安排
  5. 最适合画画的平板电脑_平板电脑性价比排行 2020年最值得入手的平板
  6. Silverlight显示滚动条
  7. easyui datagrid 去掉外边框及行与行之间的横线标题字体
  8. ZXing开发彩色二维码
  9. oracle临时表空间占用率过高,ORACLE临时表空间太大,如何处理?
  10. AUTOCAD——拉伸
  11. Windows电脑上最好的3个azw3阅读器
  12. java 美元符号_$ -----JavaScript 中美元符号 $ 的作用
  13. 2021年【最后】的抢票机会你抓住了吗?这里有一些抢票攻略!
  14. 肠道微生物群在冠心病中的作用
  15. 弹出框样式,swal is not define
  16. activitiy学习 (动态加签,动态流程图,指定节点跳转,指定多人节点跳转)
  17. Python:Pycharm如何使用scrapy框架做爬虫?
  18. 高仿网易评论列表效果之界面分析
  19. Flink大数据实时计算系列-案例初体验:HotPages
  20. java开发程序员培训班,成功跳槽阿里!

热门文章

  1. 为什么高级Android程序员永远不必担心自己的技术过时?
  2. 【Shader特效3】旋转扭动效果顶点着色器实现
  3. html css纵向滑动列表,css3页面鼠标纵向滑动效果
  4. Qt使用三点坐标画圆弧
  5. 什么是 AES-GCM加密算法
  6. 未来五年值得创业的是哪些行业?
  7. 单词记忆分类系统化--000
  8. 验证运放输入端之间电容作用
  9. 下载360图片(一)
  10. matlab让一个点变为指定颜色,MATLAB中的颜色控制