import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.awt.image.ColorModel;
import java.awt.image.WritableRaster;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Base64;
import java.util.UUID;
public class Main {
public static void main(String[] args) throws IOException {
ColorModel cm = ColorModel.getRGBdefault();
// 指定图片宽与高
WritableRaster wr = cm.createCompatibleWritableRaster(300, 50);
BufferedImage bi = new BufferedImage(cm, wr, cm.isAlphaPremultiplied(), null);
Graphics2D graphics = bi.createGraphics();
String uuid = UUID.randomUUID().toString();
// 设置文字
graphics.setFont(new Font(null, Font.PLAIN, 10));
// 设置颜色
graphics.setColor(Color.GRAY);
// 指定插入文字及其位置
graphics.drawString(uuid, 4, 20);
graphics.dispose();
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
ImageIO.write(bi, "png", byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
System.out.println(Base64.getEncoder().encodeToString(byteArray));
}
}
Java根据字符生成背景透明的图片的Base64
于 2023-11-29 14:14:50 首次发布