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
    如图所示:

    然后点击下载,查看效果
相关推荐
枫叶丹44 分钟前
【Qt开发】常用控件(四)
开发语言·qt
草莓熊Lotso12 分钟前
《吃透 C++ 类和对象(中):const 成员函数与取地址运算符重载解析》
c语言·开发语言·c++·笔记·其他
weixin_3077791321 分钟前
VS Code配置MinGW64编译Ipopt库
开发语言·c++·vscode·算法
Tadas-Gao25 分钟前
Java设计模式全景解析:从演进历程到创新实践
java·开发语言·微服务·设计模式·云原生·架构·系统架构
励志成为架构师1 小时前
跟小白一起领悟Thread——如何开启一个线程(上)
java·后端
anlogic1 小时前
Java基础 8.16
java·开发语言
可口码农2 小时前
MixOne:Electron Remote模块的现代化继任者
java·前端·electron
蚰蜒螟2 小时前
Netty 的 Select/Poll 机制核心实现主要在 NioEventLoop 的事件循环
java·开发语言
野生的编程萌新2 小时前
从冒泡到快速排序:探索经典排序算法的奥秘(二)
c语言·开发语言·数据结构·c++·算法·排序算法
Full Stack Developme2 小时前
Java后台生成多个Excel并用Zip打包下载
java·开发语言·excel