首页 > 编程语言 >直播系统搭建,java二维码 生成二维码

直播系统搭建,java二维码 生成二维码

时间:2023-05-08 14:35:41浏览次数:46  
标签:java int BufferedImage content 二维码 直播 gs

直播系统搭建,java二维码 生成二维码

 

package BasicsTest;
import com.swetake.util.Qrcode;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
/** * 二维码生成 
* Created by xs on 2017/2/6. 
*/
public class QRCode {    
/**     
* @param args the command line arguments     
*/    
public static void main(String[] args) {        
        //图片地址和名称
        String imgPath = "./qrCodeTest.png";
        //二维码的内容
        String content = "\t珊丫头"                
                     + "\nCSDN      :sinat_22750705";        
        QRCode handler = new QRCode();        
        handler.encodeQRCode(content, imgPath);        
        System.out.println("encoder QRcode success");    
}    
/**     
* 生成二维码(QRCode)图片     
* @param content     
* @param imgPath     
*/    
public  void encodeQRCode(String content,String imgPath){        
   try{            
       //二维码实体            
       Qrcode qrcodeHandler=new Qrcode();            
       //二维码纠错            
       qrcodeHandler.setQrcodeErrorCorrect('M');            
       //二维码编码模式            
       qrcodeHandler.setQrcodeEncodeMode('B');            
       //二维码版本            
       qrcodeHandler.setQrcodeVersion(7);            
       System.out.println(content);            
      byte[] contentBytes = content.getBytes("utf-8");            
       //BufferedImage 提供创建和修改图像的各种类。140 长  140 宽            
       BufferedImage bufImg = new BufferedImage(140, 140,                    
       BufferedImage.TYPE_INT_RGB);            
       //返回一个呈现指定 BufferedImage 的 Graphics2D 对象。            
       Graphics2D gs = bufImg.createGraphics();            
       //背景颜色            
       gs.setBackground(Color.white);            
       // public abstract void clearRect(int x, int y, int width, int height);宽 高  
       //clearRect() 清除一个矩形区域            
       gs.clearRect(0, 0, 140, 140);            
       // 设定图像颜色 > BLACK            
       gs.setColor(Color.BLACK);            
       // 设置偏移量 不设置可能导致解析出错            
      int pixoff = 2;            
      // 输出内容 > 二维码            
     if (contentBytes.length > 0 && contentBytes.length < 120) {                
         boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes);                
         for (int i = 0; i < codeOut.length; i++) {                    
             for (int j = 0; j < codeOut.length; j++) {                        
                 if (codeOut[j][i]) {                            
                      //fillRect() 填充一个矩形区域                            
                   gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);                        
                   }                    
               }                
          }            
      } else {                
             System.err.println("QRCode content bytes length = "                        
                       + contentBytes.length + " not in [ 0,120 ]. ");            
        }            
        //关闭窗体,并释放资源            
        gs.dispose();            
        bufImg.flush();            
        //创建文件            
        File imgFile = new File(imgPath);            
        // 生成二维码QRCode图片            
        ImageIO.write(bufImg, "png", imgFile);        
    }catch (Exception  e){            
         e.printStackTrace();        
     }    
   }
}

以上就是直播系统搭建,java二维码 生成二维码, 更多内容欢迎关注之后的文章 

 

标签:java,int,BufferedImage,content,二维码,直播,gs
From: https://www.cnblogs.com/yunbaomengnan/p/17381619.html

相关文章

  • java web乱码问题
    在javaweb项目中引起乱码的几个地方1.tomcat配置文件server.xml <Connectorport="8080"protocol="HTTP/1.1"URIEncoding="GBK"connectionTimeout="20000"redirectPort="8443"/>2.在web.xml配置拦截器......
  • 直播开发app,VUE图片裁剪,打码,旋转功能
    直播开发app,VUE图片裁剪,打码,旋转功能1,先下载插件。 cnpminstallimage-mosaic-D   cnpminstall--savevue-cropper  ​2,在components目录下创建一个imageEdit文件夹,文件夹下创建index.vue,index.vue中内容如下:  <template> <div>  <el-dialog   t......
  • 31基于java的旅游信息系统设计与实现
    本章节来给大家介绍一个基于java的旅游信息系统设计与实现系统概要旅游产业的日新月异影响着城市,村镇旅游产业的发展变化。网络、电子科技的迅猛前进同样牵动着旅游产业的快速成长。随着人们消费理念的不断发展变化,越来越多的人开始注意精神文明的追求,而不仅仅只是在意物质消......
  • JavaScript: XMLHTTPRequest
     XMLHttpRequest(javascript.info)<body><script>//CreateanewXMLHTTPRequestobjectletxhr=newXMLHttpRequest()xhr.timeout=5000//timeoutinmsleturl=newURL('https://cursive.winch.io/......
  • Java - JVM
    JVM的位置JVM的体系结构      JVM的位置 JVM的体系结构 ......
  • java--Servlet以及Mvc的实现
    ServletServlet的生命周期Servlet的生命周期可以分为四个步骤:实例化。当Web容器(如Tomcat)启动时,会首先加载Servlet类,并创建Servlet实例。这一过程通常在应用程序启动时完成。初始化。接着容器会调用Servlet实例的init()方法来进行初始化操作。在这个方法中,通......
  • java泛型'T'与'?'基本知识
    从事了几年的开发工作,一直都是在有道云或者百度网盘上记录日常工作中的一些问题和经验,难以分享知识。这是第一次发博客随笔,以便后期与喜欢技术的大家一起进步;结论:'T'指的是某一类具体的对象,'?'可以表示成占位符,表明多种数据类型;示例:可以看到show1方法中我们使用了T,大家都知道......
  • Java泛型
    泛型使用泛型的本质是参数化类型1、List<T>{}publicclassHashSet<E>{}T和E必须是引用类型不能是基本类型2、使用List<Integer>list=newArrayList<Integer>();//后面可以直接缺省java编译器会帮我们自动推断List<Integer>list=newArrayList<>();3、如果不写......
  • Java 几种任务调度的实现方法与比较
    几种任务调度的Java实现方法与比较综观目前的Web应用,多数应用都具备任务调度的功能。本文由浅入深介绍了几种任务调度的Java实现方法,包括Timer,Scheduler,Quartz以及JCronTab,并对其优缺点进行比较,目的在于给需要开发任务调度的程序员提供有价值的参考。 任务调度是指......
  • 使用Zxing二维码生成
    1、引用依赖<dependency><groupId>com.google.zxing</groupId><artifactId>javase</artifactId><version>3.3.3</version></dependency><dependency>......