package com.demo;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
/**
* @Author zhangdaozhuang
* @Since 1.0
*/
public class TestImag {
public static void main(String[] args) {
try {
BufferedImage big = ImageIO.read(new File("C:\\Users\\CX-DZ-1060\\Desktop\\123.png"));
BufferedImage small = ImageIO.read(new File("C:\\Users\\CX-DZ-1060\\Desktop\\456.jpeg"));
// 二维码缩放
Image resultingImage = small.getScaledInstance(200, 200, Image.SCALE_AREA_AVERAGING);
BufferedImage outputImage = new BufferedImage(200, 200, BufferedImage.TYPE_INT_RGB);
outputImage.getGraphics().drawImage(resultingImage, 0, 0, null);
// 叠加两张图片
Graphics2D g = big.createGraphics();
int x = 120;
int y = 980 ;
g.drawImage(outputImage, x, y, outputImage.getWidth(), outputImage.getHeight(), null);
//添加文字 设置颜色。
g.setColor(Color.BLACK);
//最后一个参数用来设置字体的大小 如果服务器上报错估计是没有字体 https://segmentfault.com/a/1190000040275198
Font f = new Font("宋体", Font.BOLD, 36);
Color mycolor = Color.BLACK;//new Color(0, 0, 255);
g.setColor(mycolor);
g.setFont(f);
//10,20 表示这段文字在图片上的位置(x,y) .第一个是你设置的内容。
g.drawString("房家瑞", 365, 1070);
g.dispose();
ImageIO.write(big, "png", new File("C:\\Users\\CX-DZ-1060\\Desktop\\789.png"));
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("-------------------成功-------------------");
}
}
java合并叠加两张图片并添加文字
最新推荐文章于 2024-08-24 05:10:58 发布