精华内容
下载资源
问答
  • 二维码修改内容
    2022-08-19 16:54:45

    java 识别图片中的二维码

    1、pom文件中引入

    <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>javase</artifactId>
        <version>3.2.1</version>
    </dependency>
    
    <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>core</artifactId>
        <version>3.3.3</version>
    </dependency>
    

    2、编写测试类,目前测试采用的是网页中的图片。可以根据需要更改图片存储地址

    import com.google.zxing.*;
    import com.google.zxing.client.j2se.BufferedImageLuminanceSource;
    import com.google.zxing.common.HybridBinarizer;
    
    import javax.imageio.ImageIO;
    import java.awt.image.BufferedImage;
    import java.net.URL;
    import java.util.HashMap;
    import java.util.Map;
    
    public class QRTest {
    
        public static void main(String[] args) {
            System.out.println(deEncodeByPath("https://xyz.bj.bcebos.com/test.JPG"));
        }
        
        
        public static String deEncodeByPath(String path){
            String content = null;
            BufferedImage image;
    
            URL url = null;
    
            try {
                url = new URL(path);
                image = ImageIO.read(url);
    
                LuminanceSource source = new BufferedImageLuminanceSource(image);
                Binarizer binarizer = new HybridBinarizer(source);
                BinaryBitmap binaryBitmap = new BinaryBitmap(binarizer);
                Map<DecodeHintType,Object> hints = new HashMap<>();
                hints.put(DecodeHintType.CHARACTER_SET,"UTF-8");
                Result result = new MultiFormatReader().decode(binaryBitmap,hints);
                System.out.println("图片中内容 : " + result.getText());
                content = result.getText();
    
            } catch (Exception ex) {
                ex.printStackTrace();
            }
    
            return content;
    
        }
        
    }
    
    更多相关内容
  • 二维码制作完成之后,还能修改二维码内容吗?

    二维码制作完成后,还能修改二维码的内容吗?

    前几天有收到好多用户在咨询同样的问题:
    “打印出来的二维码,还能修改二维码内容吗?”
    “海报上的二维码,怎么修改二维码后面的网页链接?”
    “宣传手册上的PDF二维码,怎样把那个PDF文件换成新的PDF文件?”
    ……
    在这里插入图片描述

    在回答这个问题之前,我们先来了解一下二维码的分类。所有的二维码总共分为2大类:

    静态二维码和动态二维码。它们之间有很大的区别。

    1,动态二维码支持追踪扫描数据。如扫描时间,扫描位置,扫描数量,扫描设备等。但是静态二维码不支持追踪扫描数据。

    2,动态二维码支持修改二维码内容。但是静态二维码一旦生成,就不能再修改内容了。
    在这里插入图片描述

    就拿文件来说,在二维彩虹可以通过“文件”功能制作生成静态文件二维码,以及动态文件二维码。

    所有的静态二维码,一旦生成,便永久有效,且免费制作使用。

    但是,若想要随时修改二维码内容,并查看二维码的扫描数据,还得使用动态二维码。

    在这里插入图片描述

    网址链接二维码、社交媒体二维码、电子名片二维码、文件二维码、H5编辑二维码、多链接二维码、聚合收款码、APP下载二维码、视频二维码这些都支持直接生成动态二维码。

    下面,我们以一个社交媒体二维码来举例说明:

    第一步,登录二维彩虹官网,选择“社交媒体选项”
    在这里插入图片描述

    第二步,填写内容
    在这里插入图片描述

    第三步,点击生成动态二维码

    第四步,美化设计二维码,并扫描测试

    第五步,下载应用二维码

    第六步,编辑更新二维码内容

    在动态二维码已经制作完成,被打印出来应用的时候,发现二维码的内容有误,需要更新。这个时候就不需要制作新的二维码,以及制作新的宣传物料,你只需要登录二维彩虹账户,在后台直接修改二维码的内容即可。

    在二维彩虹官网主页右上角,点击“我的账号-数据概览”,在左侧一览中选择“社交媒体”,并找到需要修改内容的那个二维码。

    点击后面的“编辑”按钮,便可以重新更新内容。在这个页面输入新的内容,更换链接、二维码、以及插入新的视频链接等。
    在这里插入图片描述

    编辑完新的内容后,直接点击保存,再次扫描同一个二维码,就能看到更新后的内容了。

    尤其是在出版刊物、市场营销活动、教育活动、电商推广引流等场景中使用二维码的时候,我们一般都更建议使用动态二维码。因为,即使你的二维码内容有误,也无需重新打印物料,在后台直接更新二维码内容就行,这大大减少了出错成本。

    原文阅读:
    二维码制作完成后,还能修改二维码的内容吗?

    展开全文
  • 本文章主要讨论的是如何将一个纯色二维码变成彩色的。 前段时间公司业务上有这么一个需求,客户不喜欢后台生成的纯色二维码,纯蓝,纯紫,纯绿都不行,想要彩色二维码。然后这个任务都落到我头上了,因为是图片处理...
  • 功能:[修正版]修改ReportBuilder支持QRCode二维码 注: 1、DelphiZXIngQRCode.pas 为用到的二维码生成源码,来源https://github.com/foxitsoftware/DelphiZXingQRCode,版权由原作者所有 2、rbRCL106.bpl 为已经...
  • 在QRGenerator源码基础上修改 https://download.csdn.net/download/weixin_54626591/85345281
  • jquery生成二维码打印

    2018-09-04 11:19:20
    jquery生成二维码打印 略微修改可以直接使用,代码已上传
  • halcon二维码的识别和提取二维码数据信息--我用的halcon10,本分算子其他版本可能需要修改
  • 活码:扫码后可以实时跳转到目标访问数据。后期修改目标时,二维码图案不变。经过本地测试,PHP空间测试。
  • 自动生成二维码,可设置二维码样式;自动生成二维码,可设置二维码样式;自动生成二维码,可设置二维码样式;自动生成二维码,可设置二维码样式;
  • # Python生成二维码图片 制作带logo和背景的二维码 可视化界面 ...3. PyQt5 GUI界面,可以修改背景、logo图片、二维码文本,调整叠加比例,点击按钮生成图片。窗口中可以预览导入的背景、logo图片和生成的图片效果。
  • 主要介绍了java生成二维码并且给二维码添加logo的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
  • jquery.qrcode.js 是居于jquery类库的绘制二维码的插件,用它来实现二维码图形渲染支持canvas和table两种绘图方式。(jquery.qrcode.js 设置显示方式为table时在webkit核心浏览器如chrome下会变形,这个需要注意。)...
  • 微信二维码样式修改

    2022-03-29 18:04:25
    微信官方开发文档地址:...如需修改以下样式: .impowerBox .qrcode {width: 200px;} .impowerBox .title {display: none;} .impowerBox .info {width: 200p

    微信官方开发文档地址:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html

    当微信团队提供的默认样式与自己的页面样式不匹配,可以自己提供样式文件来覆盖默认样式。
    如需修改以下样式:

    .impowerBox .qrcode {width: 200px;}
    .impowerBox .title {display: none;}
    .impowerBox .info {width: 200px;}
    .status_icon {display: none}
    .impowerBox .status {text-align: center;} 
    

    将以上css代码需要用Base64 在线编码,Base64 在线编码地址:https://base64.us/
    在这里插入图片描述
    将编码好的代码复制到href属性值中

    new window.WxLogin({
            id: "wechat",
            appid,
            redirect_uri,
            response_type: "code",
            scope: "snsapi_login",
            state,
            href:"data:text/css;base64,LmltcG93ZXJCb3ggLnFyY29kZSB7d2lkdGg6IDIwMHB4O30KLmltcG93ZXJCb3ggLnRpdGxlIHtkaXNwbGF5OiBub25lO30KLmltcG93ZXJCb3ggLmluZm8ge3dpZHRoOiAyMDBweDt9Ci5zdGF0dXNfaWNvbiB7ZGlzcGxheTogbm9uZX0KLmltcG93ZXJCb3ggLnN0YXR1cyB7dGV4dC1hbGlnbjogY2VudGVyO30g"
          });
    
    展开全文
  • js实现长按二维码识别及上传二维码识别。样式随便写的,可以自己修改
  • 可以不依赖后台的基础上直接将你的内容生成二维码格式,供给移动端扫描 若输入框不输入内容,则默认生成 “http://www.lanrenzhijia.com”内容 可以进入js将默认值修改下即可 使用方法: 1、将CSS样式拷贝到你...
  • 二维码批量识别解码py脚本, 将需要扫描的二维码放到一个文件夹下,修改python路径即可。 使用到 import os import zxing 这个是因做ctf题碰见很多二维码需要识别而做的。
  • 本工具可以自动生成二维码,只要提前设置好参数(包含使用哪些单元格生成二维码二维码的尺寸、二维码的放置位置,分隔符),用户修改单元格中的值时,程序会全自动生成相应的二维码。 自带GIF动画教材。
  • 发现生成内容不变;最后发现text赋值出现问题;下面直接上代码。 安装插件 #二维码 npm install qrcodejs2 代码引用 <template> <div class="app-container"> <el-form :model="queryParams...

     

    今天学习使用vue前端生成二维码并保存功能;发现生成内容不变;最后发现text赋值出现问题;下面直接上代码。

    安装插件

    #二维码
    npm install qrcodejs2

    代码引用

    <template>
      <div class="app-container">
        <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
          <el-form-item label="学校名称" prop="schoolId">
            <el-select v-model="queryParams.schoolId" placeholder="请选择学校" clearable size="small">
              <el-option
                v-for="item in schoolList"
                :key="item.id"
                :label="item.schoolName"
                :value="item.id"
                :aria-selected="form.schoolId"
              />
            </el-select>
          </el-form-item>
          <el-form-item label="年级" prop="gradeId">
            <el-select v-model="queryParams.gradeId" placeholder="请选择年级" clearable size="small">
              <el-option
                v-for="item in gradeList"
                :key="item.id"
                :label="item.gradeName"
                :value="item.id"
                :aria-selected="form.gradeId"
              />
            </el-select>
          </el-form-item>
          <el-form-item>
            <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
          </el-form-item>
        </el-form>
    
        <el-row :gutter="10" class="mb8">
          <el-col :span="1.5">
            <el-button
              type="primary"
              icon="el-icon-plus"
              size="mini"
              @click="handleAdd"
              v-hasPermi="['books:schoolGrade:add']"
            >新增</el-button>
          </el-col>
          <el-col :span="1.5">
            <el-button
              type="success"
              icon="el-icon-edit"
              size="mini"
              :disabled="single"
              @click="handleUpdate"
              v-hasPermi="['books:schoolGrade:edit']"
            >修改</el-button>
          </el-col>
          <el-col :span="1.5">
            <el-button
              type="danger"
              icon="el-icon-delete"
              size="mini"
              :disabled="multiple"
              @click="handleDelete"
              v-hasPermi="['books:schoolGrade:remove']"
            >删除</el-button>
          </el-col>
    	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
        </el-row>
    
        <el-table v-loading="loading" :data="schoolGradeList" @selection-change="handleSelectionChange">
          <el-table-column type="selection" width="55" align="center" />
          <el-table-column label="记录" align="center" prop="id" />
          <el-table-column label="学校" align="center" prop="schoolId" :formatter="getSchoolFormat"/>
          <el-table-column label="年级" align="center" prop="gradeId" :formatter="getGradeFormat"/>
          <el-table-column label="备注" align="center" prop="remark" />
          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
            <template slot-scope="scope">
              <el-button
                size="mini"
                type="text"
                icon="el-icon-edit"
                @click="creatQrCode(scope.row)"
                v-hasPermi="['books:schoolGrade:edit']"
              >二维码</el-button>
              <el-button
                size="mini"
                type="text"
                icon="el-icon-edit"
                @click="handleUpdate(scope.row)"
                v-hasPermi="['books:schoolGrade:edit']"
              >修改</el-button>
              <el-button
                size="mini"
                type="text"
                icon="el-icon-delete"
                @click="handleDelete(scope.row)"
                v-hasPermi="['books:schoolGrade:remove']"
              >删除</el-button>
            </template>
          </el-table-column>
        </el-table>
    
        <pagination
          v-show="total>0"
          :total="total"
          :page.sync="queryParams.pageNum"
          :limit.sync="queryParams.pageSize"
          @pagination="getList"
        />
    
        <!-- 添加或修改学校对应年级对话框 -->
        <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
            <el-form-item label="学校" prop="schoolId">
              <el-select v-model="form.schoolId" placeholder="请选择学校">
                <el-option
                  v-for="item in schoolList"
                  :key="item.id"
                  :label="item.schoolName"
                  :value="item.id"
                  :aria-selected="form.schoolId"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="年级" prop="gradeId">
              <el-select v-model="form.gradeId" placeholder="请选择年级">
                <el-option
                  v-for="item in gradeList"
                  :key="item.id"
                  :label="item.gradeName"
                  :value="item.id"
                  :aria-selected="form.gradeId"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="备注" prop="remark">
              <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
            </el-form-item>
          </el-form>
          <div slot="footer" class="dialog-footer">
            <el-button type="primary" @click="submitForm">确 定</el-button>
            <el-button @click="cancel">取 消</el-button>
          </div>
        </el-dialog>
        <!-- 二维码对话框 -->
        <el-dialog center :title="title" :visible.sync="openQr" width="500px">
          <div style="text-align: center">
          <div id="qrcode" style="width: 240px; margin: 0px auto; border: 10px solid rgb(255, 255, 255);" ref="qrCodeUrl"></div>
          </div>
          <div slot="footer" class="dialog-footer">
            <el-button @click="cancelQr">取 消</el-button>
            <el-button type="primary" @click="saveQrCode2">保存二维码</el-button>
          </div>
        </el-dialog>
      </div>
    </template>
    

     问题出现在生成二维码时,给的text内容是纯数字类型导致生成内容每次都一样,具体原因没深入研究;这里只要将id转成字符串就成功了;

    text: row.schoolId+''

    import QRCode from 'qrcodejs2'
    //引用保存二维码js
    import {saveQrCode} from "@/api/qrcode2";
    data() {
        // 其他参数*****省略
        // 是否显示二维码弹出层
        openQr: false,
        // 弹出层标题
        title: ""
    },
    methods: {
    /**
         * 生成二维码
         */
        creatQrCode(row) {
          this.openQr = true;
          this.title = '《'+row.schoolName+' 》二维码';
          // 延时执行可以解决首次加载失败问题
          setTimeout(() => {
            document.getElementById('qrcode').innerHTML = "";
            var qrcode = new QRCode(this.$refs.qrCodeUrl, {
    //注意这里使你二维码生成失败,必须是字符串,所以必须转换一下;我的id是数字类型
              text: row.schoolId+'',
              width: 220,
              height: 220,
              colorDark: '#000000',
              colorLight: '#ffffff',
              correctLevel: QRCode.CorrectLevel.H
            })
          }, 500)
        },
        // 保存二维码
        saveQrCode2(){
          // //找到canvas标签
    标签对象必须在使用页面调用,不然保存时提示失败,具体原因没深入研究
          let myCanvas = document.getElementById('qrcode').getElementsByTagName('canvas');
          let img=document.getElementById('qrcode').getElementsByTagName('img');
          saveQrCode(myCanvas,img,this.title)
        }
    }
    

     应用保存二维码

    qrcode2.js
    /**
     * 保存二维码
     * @param myCanvas 画布对象,必须在使用页面初始化,不然识别不了
     * @param img 图片对象,必须在使用页面初始化,不然识别不了
     * @param title 下载保存文件名称
     */
    export function saveQrCode(myCanvas,img,title){
      // //找到canvas标签
      // let myCanvas = document.getElementById(tagId).getElementsByTagName('canvas');
      // let img=document.getElementById(tagId).getElementsByTagName('img')
      // // //创建一个a标签节点
      let a= document.createElement("a")
      // //设置a标签的href属性(将canvas变成png图片)
      let imgURL=myCanvas[0].toDataURL('image/jpg');
      let ua = navigator.userAgent;
      if (ua.indexOf("Trident") != -1 && ua.indexOf("Windows") != -1) { // IE内核 并且  windows系统 情况下 才执行;
        var bstr = atob(imgURL.split(',')[1])
        var n = bstr.length
        var u8arr = new Uint8Array(n)
        while (n--) {
          u8arr[n] = bstr.charCodeAt(n)
        }
        var blob = new Blob([u8arr])
        window.navigator.msSaveOrOpenBlob(blob, title + '.' + 'png')
      }else if(ua.indexOf("Firefox") > -1){ //火狐兼容下载
        let blob = this.base64ToBlob(imgURL); //new Blob([content]);
        let evt = document.createEvent("HTMLEvents");
        evt.initEvent("click", true, true);//initEvent 不加后两个参数在FF下会报错  事件类型,是否冒泡,是否阻止浏览器的默认行为
        a.download = ' ';//下载图片名称,如果填内容识别不到,下载为未知文件,所以我这里就不填为空
        a.href = URL.createObjectURL(blob);
        a.dispatchEvent(new MouseEvent('click', {bubbles: true, cancelable: true, view: window}));//兼容火狐
      }else{ //谷歌兼容下载
        img.src=myCanvas[0].toDataURL('image/jpg');
        // a.href = myCanvas[0].toDataURL('image/png').replace('image/png', 'image/octet-stream')
        a.href=img.src
        //设置下载文件的名字
        a.download = title
        //点击
        a.click()
      }
    }
    //base64转blob
    export function base64ToBlob(code) {
      let parts = code.split(';base64,');
      let contentType = parts[0].split(':')[1];
      let raw = window.atob(parts[1]);
      let rawLength = raw.length;
      let uInt8Array = new Uint8Array(rawLength);
      for (let i = 0; i < rawLength; ++i) {
        uInt8Array[i] = raw.charCodeAt(i);
      }
      return new Blob([uInt8Array], {type: contentType});
    }
    

     

     

    展开全文
  • 一、自动生成二维码修改单元格的值后,工作表中的二维码像公式一样全自动更新。 二、批量生成产品标签:包含三类标签。 本软件支持Excel 2007、2010、2013、2016、2019和2021。还支持WPS 2019和2022。本工具是邮件...
  • ThoughtWorks.QRCode二维码生成库已修改 支持中文 今天刚刚编译的二维码类库,绝对支持中文! 使用方法(先引用dll) 示例: QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(); qrCodeEncoder.QRCodeEncodeMode =...
  • 二维码开源

    2018-08-06 14:39:49
    二维码的开源代码,二维码的使用实例,经修改后可以支持中文信息。本程序使用c#编写。
  • 现在二维码图片是很多人在使用的一种分享工具,通过制作二维码可以将图片、视频、文件等等多种内容,通过让他人扫码的方式获取。按照以上的方法,就可以将图片和文字做成一个二维码图片展示,用户可以通过扫码获取到...
  • C++ 二维码 生成库

    2018-01-30 00:47:18
    C++ 二维码 生成库,libqrencode. 修改后的 以支持 VS 附带原地址: https://fukuchi.org/works/qrencode/
  • qrcode生成二维码在很多游戏应用被广泛使用,白鹭里可以直接使用,如果是其他引擎,只需要修改qrcode.draw()方法即可实现,简单,游戏应用内动态生成二维码超级方便
  • python使用qrcode生成可编辑内容二维码一、qr码-二维码二、在python中使用1.安装库2.引入库3.参数设置 一、qr码-二维码 QR code 是一种矩阵式二维条码(又称棋盘式二维条码)。它是在一个矩形空间通过黑、白像素在...
  • 二维码

    2021-02-05 14:15:26
    一、一维码与二维码介绍 一维码介绍 一维条码是由一组规则排列的条、空以及对应的字符组成的标记,“条”指对光线反射率较低的部分,“空”指对光线反射率较高的部分,这些条和空组成的数据表达一定的信息,并能够用...
  • 支持中文的C# .Net二维码生成与读取源码例子 修改了上一版本读取代码错误问题
  • 二维码处理

    2017-03-27 13:04:16
    支持二维码单独,批处理方式(二维码中间可以加图标),可以查询、修改、删除、添加生成项。使用zxing.dll控件开发。
  • C++ 二维码 生成库,libqrencode. 修改后的 以支持 VS 附带原地址: https://fukuchi.org/works/qrencode/

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 80,426
精华内容 32,170
关键字:

二维码修改内容