首页 > 其他分享 >在一个图片上画一个二维码

在一个图片上画一个二维码

时间:2023-10-12 18:01:31浏览次数:21  
标签:google java 上画 image 二维码 bitMatrix import 图片

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;

public class QRCodePainter {
    public static void main(String[] args) {
        String backgroundImageFile = "background.jpg";
        String qrCodeContent = "Hello, World!";

        try {
            // 加载背景图片
            BufferedImage image = ImageIO.read(new File(backgroundImageFile));

            // 创建二维码
            QRCodeWriter qrCodeWriter = new QRCodeWriter();
            BitMatrix bitMatrix = qrCodeWriter.encode(qrCodeContent, BarcodeFormat.QR_CODE, 200, 200);

            // 绘制二维码到图片中心
            int xPos = (image.getWidth() - bitMatrix.getWidth()) / 2;
            int yPos = (image.getHeight() - bitMatrix.getHeight()) / 2;
            for (int x = 0; x < bitMatrix.getWidth(); x++) {
                for (int y = 0; y < bitMatrix.getHeight(); y++) {
                    image.setRGB(xPos + x, yPos + y, bitMatrix.get(x, y) ? Color.BLACK.getRGB() : Color.WHITE.getRGB());
                }
            }

            // 保存带有二维码的新图片
            String outputFile = "output.jpg";
            ImageIO.write(image, "jpg", new File(outputFile));

            System.out.println("成功生成带有二维码的图片:" + outputFile);
        } catch (IOException | WriterException e) {
            e.printStackTrace();
        }
    }
}

 

标签:google,java,上画,image,二维码,bitMatrix,import,图片
From: https://www.cnblogs.com/wujf/p/17760178.html

相关文章

  • 成品直播源码,图片放大且有渐变色罩层出现
    成品直播源码,图片放大且有渐变色罩层出现 <!DOCTYPEhtml><html><head><metacharset="utf-8"><title>5</title><style>.mask1,.text{position:relative;overflow:hidden;width:800px;height:500px;transition:all.5s;}      ......
  • Java通过itext解析PDF中的关键字得到坐标进行插入印章图片或签名
    需求因需提高公司运转效率,提倡去无纸化操作,减少人力等前提;通过系统将审核通过后的pdf文档进行盖电子印章或电子签名等功能;测试效果如下:图1图2实现思路因如上图1中,存在动态表格,所以文档的布局是随数据而变的,可能是多页,可能是一页,且内容上下浮动,所以得通过解析文档内容,通过......
  • 【分享】小红书采集图片下载到本地
    前面我们把图片链接都存到了excel里,现在想要把图片都下载到本地文件夹下面是实现的python代码图片链接存在第三列单元格,并且是多个图片\n分割的,现在把他们全部下载到本地importpandasaspdimportrequestsdf=pd.read_excel("小红书.xlsx",header=None)#循环遍历每个......
  • 炫酷转换:Java实现Excel转换为图片的方法
    摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。前言在实际开发过程中,经常会有这样的需求:将Excel表格或特定区域转换为图片,以便在其他软件中使用。而在Java开发中,借助于报表插件可以轻松地将工作......
  • Unity完美像素Sprite:怎么让图片变得清晰(转载) Unity Pixel Perfect Sprite: How To Ach
    https://gamedevelopertips.com/unity-pixel-perfect-sprite/SoIwasmakingalittleprototypeformynewgamewhenIjustcameacrossalittleproblem.ThespritethatIwasloadingintoUnitywasjustlookingtoopixelatedandnotsharpatall.SoIspen......
  • html 图片地图
    <html><head><title></title></head><body><imgsrc="8d030589-1af1-4fec-bfc9-d1a7ad1b23f2.png"usemap="#image-map"><mapname="image-map"><areatarget=&qu......
  • 智能视频分析系统AI智能分析网关V3告警图片不显示该如何解决?
    AI智能分析网关V3包含有20多种算法,包括人脸、人体、车辆、车牌、行为分析、烟火、入侵、聚集、安全帽、反光衣等等,可应用在安全生产、通用园区、智慧食安、智慧城管、智慧煤矿等场景中。将网关硬件结合我们的视频监控系统EasyCVR一起使用,可以实现多现场的前端摄像头等设备统一集中......
  • 智能视频分析系统AI智能分析网关V3触发告警图片不显示该如何解决?
    AI智能分析网关V3包含有20多种算法,包括人脸、人体、车辆、车牌、行为分析、烟火、入侵、聚集、安全帽、反光衣等等,可应用在安全生产、通用园区、智慧食安、智慧城管、智慧煤矿等场景中。将网关硬件结合我们的视频监控系统EasyCVR一起使用,可以实现多现场的前端摄像头等设备统一集中......
  • Android入门教程 | ImageView 图片显示
    为了让App界面更美观生动,我们可以放上图片。显示图片是“刚需”。不论是书籍,报纸,网站,都有显示图片的需求。毕竟“无图无真相”。在Android应用开发中,我们通常使用ImageView来显示图片。ImageView的主要属性ImageView的使用ImageView经常用来显示图片。例如直接显示drawable里......
  • img 固定宽高 图像不拉伸 显示图片中间部分
    .m-sd-chat-select-avatar-img{width:100px;height:125px;object-fit:cover;border-radius:6px;cursor:pointer;}  使用后:使用前: ......