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

    然后点击下载,查看效果
相关推荐
ŧ榕树先生7 分钟前
查看jdk是否安装并且配置成功?(Android studio安装前的准备)
java·jdk
未来的JAVA高级开发工程师11 分钟前
适配器模式
java
LUCIAZZZ16 分钟前
JVM之内存管理(一)
java·jvm·spring·操作系统·springboot
D_aniel_32 分钟前
排序算法-计数排序
java·排序算法·计数排序
极小狐38 分钟前
极狐GitLab 通用软件包存储库功能介绍
java·数据库·c#·gitlab·maven
旧故新长1 小时前
Browserless 快速上手
java
java1234_小锋1 小时前
Spring Bean有哪几种配置方式?
java·后端·spring
?abc!1 小时前
缓存(5):常见 缓存数据淘汰算法/缓存清空策略
java·算法·缓存
DanB241 小时前
Java笔记4
java·开发语言·笔记
Dddle11 小时前
C++:this指针
java·c语言·开发语言·c++