Java 根据字符生成背景透明的图片

  1. 上代码
java 复制代码
package com.example.demotest.controller;

/**
 * @Author shaolin
 * @Date 2024-10-08 10:11
 **/

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;

public class TextToImage {
    public static void main(String[] args) throws IOException {
        ColorModel cm = ColorModel.getRGBdefault();
        // 指定图片宽与高
        WritableRaster wr = cm.createCompatibleWritableRaster(200, 50);
        BufferedImage bi = new BufferedImage(cm, wr, cm.isAlphaPremultiplied(), null);
        Graphics2D graphics = bi.createGraphics();
        // 设置文字
        graphics.setFont(new Font(null, Font.PLAIN, 25));
        // 设置颜色
        graphics.setColor(Color.GRAY);
        // 指定插入文字及其位置
        graphics.drawString("雷少林", 60, 35);
        graphics.dispose();
        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
        ImageIO.write(bi, "png", byteArrayOutputStream);
        byte[] byteArray = byteArrayOutputStream.toByteArray();
        System.out.println(Base64.getEncoder().encodeToString(byteArray));
    }
}

如果改成方法的话, 把图片宽与高 ,以及指定插入文字及其位置的俩参数以及生成的文字,都改为前端传值

  1. 如果是想后端把除中文名称外的参数写死的话,可以 把打印的base64输入到下面的地址的输入框里
    地址: https://www.uutils.com/image/base64_to_image.htm
    如图所示:

    然后点击下载,查看效果
相关推荐
TsengOnce几秒前
阿里云ECS多版本JDK切换
java·python·阿里云
wearegogog1233 分钟前
基于C#的FTP客户端实现方案
java·网络·c#
听风吟丶4 分钟前
Java NIO 深度解析:从核心组件到高并发实战
java·开发语言·jvm
野生技术架构师11 分钟前
Java面试题及答案总结(互联网大厂新版)
java·面试·状态模式
a努力。12 分钟前
小红书Java面试被问:ThreadLocal 内存泄漏问题及解决方案
java·jvm·后端·算法·面试·架构
此生只爱蛋12 分钟前
【Redis】String 字符串
java·数据库·redis
C++业余爱好者13 分钟前
Java开发中Entity、VO、DTO、Form对象详解
java·开发语言
zmzb010314 分钟前
C++课后习题训练记录Day50
开发语言·c++
froginwe1114 分钟前
`.toggleClass()` 方法详解
开发语言
lsx20240616 分钟前
SQLite 附加数据库详解
开发语言