我们通过java把下面的背景图和二维码以及一段文字合并成一张新的图片

背景图片:

二维码图片:

public class Main {/*** 合成图片** @param backgroundPath* @param qrCodePath* @param message* @param outPutPath* @throws IOException*/public static void overlapImage(String backgroundPath, String qrCodePath, String message, String outPutPath) throws IOException {// 设置背景图片大小BufferedImage backgroundImage = resizeImage(566, 230, ImageIO.read(new File(backgroundPath)));// 设置二维码图片大小BufferedImage qrCodeImage = resizeImage(150, 150, ImageIO.read(new File(qrCodePath)));Graphics2D graphics = backgroundImage.createGraphics();// 在背景图片上添加文字graphics.setColor(Color.white);graphics.setFont(new Font("微软雅黑", Font.BOLD, 20));graphics.drawString(message, 100, 40);// 在背景图片上添加二维码图片graphics.drawImage(qrCodeImage, 210, 60, qrCodeImage.getWidth(), qrCodeImage.getHeight(), null);graphics.dispose();// 输出新的图片ImageIO.write(backgroundImage, "png", new File(outPutPath));}/*** 重新设置图片大小** @param width* @param height* @param bufferedImage* @return*/private static BufferedImage resizeImage(int width, int height, BufferedImage bufferedImage) {BufferedImage newBufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);newBufferedImage.getGraphics().drawImage(bufferedImage.getScaledInstance(width, height, Image.SCALE_SMOOTH), 0, 0, null);return newBufferedImage;}public static void main(String[] args) throws IOException {String backgroundPath = "/Users/admin/Desktop/background.png";String qrCodePath = "/Users/admin/Desktop/qrcode.png";String message = "java菜市场-专注于技术干货的免费分享";String outPutPath = "/Users/admin/Desktop/newImage.png";overlapImage(backgroundPath, qrCodePath, message, outPutPath);}}

最终生成的合成后的图片:

如果想了解通过java实现图片压缩、裁剪、翻转、添加水印等,请参考这篇文章:

java使用google开源工具Thumbnailator实现图片压缩

java实现多张图片和文字合并 java图片合成示例代码相关推荐

  1. java 批量写入文件_Java批量写入文件和下载图片的示例代码

    很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...

  2. java批量下载图片_Java批量写入文件和下载图片的示例代码

    很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...

  3. html5滚动文字切换效果代码,js+div实现文字滚动和图片切换效果代码

    本文实例讲述了js+div实现文字滚动和图片切换效果代码.分享给大家供大家参考.具体如下: 这里演示js+div文字滚动和图片切换代码,为了演示方便,去掉了图片调用,用数字代替了,用时候再加上就可以了 ...

  4. java开发保险案例_Java实现双保险线程的示例代码

    双保险线程,每次启动2个相同的线程,互相检测,避免线程死锁造成影响. 两个线程都运行,但只有一个线程执行业务,但都会检测对方的时间戳 如果时间戳超过休眠时间3倍没有更新的话,则重新启动对方线程. 例子 ...

  5. java中if条件格式_Java 设置Excel条件格式示例代码(高亮条件值、应用

    概述 在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式.本篇文章,将通过Java程序示例介绍条件格式的设置方法,设置条 ...

  6. Java制作圣诞树找规律_java 实现简单圣诞树的示例代码(圣诞节快乐)

    java 实现简单圣诞树的示例代码(圣诞节快乐) 代码如下: @Test public void shengdanshu(){ //叶子层 int level = 10; //根层 int rootL ...

  7. 篮球数据API接口 - 【篮球文字直播】API调用示例代码

    分享使用接口调用的示例代码,篮球数据[篮球文字直播]接口 import java.nio.charset.StandardCharsets; import java.nio.file.Files; i ...

  8. 足球数据【文字直播】API调用示例代码

    分享[文字直播]接口调用的示例代码 import javax.xml.bind.JAXBContext; import javax.xml.bind.Unmarshaller; import java ...

  9. aspose pdf java,Java 使用aspose.pdf将多张图片转成pdf的方法及示例代码

    1.Aspose组件下载 2、多张图片转成pdf 1) 验证license/** * 获取license * * @return */ public static boolean getLicense ...

  10. java显示一张图片不显示_微信图片不可显示java解决方法

    场景: 微信上传了图片素材,返回了图片url,然后不能在img标签中正常显示. 原因是微信做了图片防盗连接. 解决方法: 原理:使用你的服务端脚本,远程抓取图片,然后输出image/* 格式,就可以了 ...

最新文章

  1. PyTorch称霸学界,TensorFlow固守业界,ML框架之争将走向何方?
  2. 2021-04-09 linux的shell脚本简单教程
  3. Eclipse调试时出现source not found的问题
  4. [导入]屏蔽相应键盘按钮
  5. 移动端常见bug汇总001
  6. updateStateByKey算子入门案例之wordCount
  7. Oracle学习之路-- 案例分析实现行列转换的几种方式
  8. 实现gabor filter的滤波
  9. 数仓建模—主数据管理
  10. Scala中的Option
  11. python精通 epub_精通Python自然语言处理 pdf epub mobi txt 下载
  12. 【计算机网络】实验一 Protocol Layer
  13. 王家林老师人工智能AI 第10节课:用神经网络识别手写数字内幕解密 老师微信13928463918
  14. mysql pdo教程_(唯一合适) PDO 教程
  15. 移除联想M5210阵列卡(3650M5)的缓存模块以开启JBOD模式
  16. 简单的连数据库 拼接数据 发邮件Python脚本
  17. 上海法官招嫖爆料者讲述始末
  18. 使用ROS melodic下 控制真实UR5机器人 手把手教程
  19. iceoryx(冰羚)-IPC中间件交叉编译
  20. 2019/01/07 一位前端实习生 艰辛过程 励志 实习周记(三)——第二 三周

热门文章

  1. matlab中GUI界面的一些设计与操作
  2. 记一次中Phobos家族Devos勒索病毒
  3. abaqus -复合材料
  4. c语言二级安卓软件,C语言二级考试题库安卓下载-C语言二级考试题库APK下载 - Iefans...
  5. 医视云助力清华长庚医院开展肝胆外科肿瘤远程多学科会诊
  6. PS2模拟器 PCSX2 新手向
  7. 无源滤波器和有源滤波器有什么区别?-道合顺大数据infinigo
  8. 傅里叶分析原理——非常好的一篇讲解文章
  9. [rhel6.5]DHCP分配IP地址以及保留地址
  10. OpenCV Python 椭圆 和 FDDB 数据库