• Java之—hutool工具类二维码生成跟背景图合并输出


    主要是集合hutool工具的使用,简单方便。

    /**
         * 两个图片合并(加文字)
         * @param sourceUrl 底部背景图
         * @param config 二维码基础配置
         * @param qrContent 二维码内容
         * @param qrX 二维码横坐标
         * @param qrY 二维码纵坐标
         * @param textContent 文字(一般为标题)
         * @param textFontSize 文字大小
         * @param textFontX 文字的横坐标
         * @param textFontY 文字的纵坐标
         * @return
         */
        @Override
        public ByteArrayInputStream getQrCodeUrl(String sourceUrl,
                                   QrConfig config,
                                   String qrContent,
                                   int qrX,
                                   int qrY,
                                   String textContent,
                                   int textFontSize,
                                   int textFontX,
                                   int textFontY) {
            //二维码设置
    //        QrConfig config = QrCodeUtils.getConfig();
            //1,生成二维码
            BufferedImage qrImage = QrCodeUtil.generate(qrContent, config);
    
            // 2,将图片合成在一起
            Image image = ImgUtil.pressImage(
                    //底图
                    ImgUtil.read(sourceUrl),
                    //二维码图(水印图)
                    qrImage,
    //                ImgUtil.read(codeFile),
                    qrX,
                    //y坐标修正值。 默认在中间,偏移量相对于中间偏移
                    qrY,
                    //透明度
                    1.0f
            );
            //3,加文字
            Image pressTextImage = ImgUtil.pressText(
                    image,
                    //title 创牌北805
                    textContent,
                    //颜色
                    Color.WHITE,
                    //字体 42
                    new Font("黑体", Font.BOLD, textFontSize),
                    //x坐标修正值。 默认在中间,偏移量相对于中间偏移
                    textFontX,
                    //y坐标修正值。 默认在中间,偏移量相对于中间偏移
                    textFontY,
                    //透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
                    1.0f
            );
            //转为流
            ByteArrayInputStream inputStream = ImgUtil.toStream(pressTextImage, QrCodeUtils.FORMAT_NAME);
            return inputStream;
        }
  • 相关阅读:
    风格迁移常用代码
    SpringBoot 静态资源(static)无法访问问题404
    javaweb JAVA JSP销售系统购物系统jsp购物系统购物商城系统源码(jsp电子商务系统)网上在线销售
    了解什么是架构基本概念和架构本质
    NodeJS http请求
    Zookeeper:事件监听和通知机制
    c++day6
    windows常用命令大全
    进程互斥的软硬件实现方法
    数据分析与取证capture.pcapng
  • 原文地址:https://blog.csdn.net/haopingping_88/article/details/126291679