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

    然后点击下载,查看效果
相关推荐
pkowner14 小时前
若依使用技巧
java
静若繁花_jingjing14 小时前
DDD领域驱动设计实践_保险
java·开发语言
serendipity_hky14 小时前
【微服务 - easy视频 | day04】Seata解决分布式事务
java·spring boot·分布式·spring cloud·微服务·架构
程序猿202314 小时前
Python每日一练---第十二天:验证回文串
开发语言·python
wjs202414 小时前
AJAX 实例详解
开发语言
沿着路走到底15 小时前
python 判断与循环
java·前端·python
我要升天!15 小时前
QT -- 初识
开发语言·qt
wjs202415 小时前
Memcached flush_all 命令详解
开发语言
zbhbbedp282793cl15 小时前
unique_ptr和shared_ptr有何区别?
java·开发语言·jvm
珹洺15 小时前
Java-Spring入门指南(二十九)Android交互核心:按钮点击事件与Activity跳转实战
android·java·spring