精华内容
下载资源
问答
  • 二维码扫描 ,二维码生成, 二维码生成加图片
  • 生成二维码加文字,加图片,加logo,生成二维码加文字,加图片,加logo,生成二维码加文字,加图片,加logo,生成二维码加文字,加图片,加logo,生成二维码加文字,加图片,加logo,生成二维码加文字,加图片,加logo,...
  • 自由生成二维码加文字,加图片,加loge,自由生成二维码加文字,加图片,加loge,自由生成二维码加文字,加图片,加loge,自由生成二维码加文字,加图片,加loge,自由生成二维码加文字,加图片,加loge,自由生成二维码...
  • js给二维码加图片-附件资源
  • js给二维码加图片

    千次阅读 2017-12-28 23:08:03
    我之前是写过jq生成二维码下载的博客的,今天项目的时候老大非要说中间加上自己的头像,然后我就没办法下呗。 老习惯一言不合就代码了啊 首先引入jquery,还有下面的这个jquery.qrcode.min.js //计算宽,高,...

    我之前是写过jq生成二维码下载的博客的,今天项目的时候老大非要说中间加上自己的头像,然后我就没办法加下呗。
    老习惯一言不合就上代码了啊
    首先引入jquery,还有下面的这个jquery.qrcode.min.js

        //计算宽,高,中心坐标,logo大小
             var width = 180;
             var height = 180;
             var x = width * 0.4;
             var y = height * 0.4;
             var lw = width * 0.2;
             var lh = height * 0.2;
    
         //生成二维码
        $("#qrcodeDiv").qrcode({
                    width: width,
                    height:height,
                    text: "http://www.baidu.com"
            });
         //画logo
             $("#qrcodeDiv canvas")[0].getContext('2d').drawImage($("#logoImg")[0], x, y, lw, lh);

    上面这个就是js代码注释非常的清楚哦,x,y,lw,lh,就是中间头像的四个点,会canvas的知道了,canvas画图用的。

    <div id="qrcodeDiv">//容器
         <img id="logoImg" style="display: none;" src="1.jpg" alt="">
         图片二维码中间的图片
    </div>

    效果:
    这里写图片描述

    以上就是本人拙见,如有出入,还请指正,谢谢!!!

    展开全文
  • 实现原理: 利用微信小程序canvas API把文字和图片进行合成,用wx.canvasToTempFilePath()返回图片地址再保存至相册。
  • 正常生成的二维码都是不带图标的,但是很多时候我们都需要在二维码中间添加我们自己的图标,这个时候我们就可以使用灵猫二维码来进行操作了! 使用教程: 1、打开灵猫二维码:http://lmewm.maiyurl.cn。 2、...

    正常生成的二维码都是不带图标的,但是很多时候我们都需要在二维码中间添加上我们自己的图标,这个时候我们就可以使用灵猫二维码来进行操作了!

    使用教程:

    1、打开灵猫二维码:http://lmewm.maiyurl.cn 。

    2、点击首页的立即制作按钮 。

    3、上传自己的二维码图片,点击确认按钮 。

     

    4、图片上传完毕后,根据以下选项选择自己需要的服务,删除LOGO、修改LOGO、添加LOGO、嵌入文字均可实现。

     

    5、设置完毕后点击保存图片按钮,保存到手机或者是电脑上了。就可以使用~!

     

     

     

    展开全文
  • 生成二维码加图片加文字

    千次阅读 2017-10-13 16:48:43
    import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage;...import java.io.BufferedOutputStream;...import java.io.FileOutputStr
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.image.BufferedImage;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.util.HashMap;
    import java.util.Map;

    import javax.imageio.ImageIO;

    import com.google.zxing.BarcodeFormat;
    import com.google.zxing.EncodeHintType;
    import com.google.zxing.MultiFormatWriter;
    import com.google.zxing.WriterException;
    import com.google.zxing.common.BitMatrix;
    import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;

    public class CodeCreator {  
        private static int BLACK = 0x000000;  
        private static int WHITE = 0xFFFFFF;  
          
        private BufferedImage createCodeImage(CodeModel info){  
            String contents = info.getContents();  
            int width = info.getWidth();  
            int height = info.getHeight();  
            Map<EncodeHintType, Object> hint = new HashMap<EncodeHintType, Object>();  
            hint.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);  
            hint.put(EncodeHintType.CHARACTER_SET, info.getCharacter_set());  
            hint.put(EncodeHintType.MARGIN, 0);  
            MultiFormatWriter writer = new MultiFormatWriter();  
            BufferedImage img = null;  
            try {  
                BitMatrix bm = writer.encode(contents, BarcodeFormat.QR_CODE, width, height, hint);  
                int[] locationTopLeft = bm.getTopLeftOnBit();  
                int[] locationBottomRight = bm.getBottomRightOnBit();  
                info.setBottomStart(new int[]{locationTopLeft[0], locationBottomRight[1]});  
                info.setBottomEnd(locationBottomRight);  
                int w = bm.getWidth();  
                int h = bm.getHeight();  
                img = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);  
                for(int x=0;x<w;x++){  
                    for(int y=0;y<h;y++){  
                        img.setRGB(x, y, bm.get(x, y) ? BLACK : WHITE);  
                    }  
                }  
            } catch (WriterException e) {  
                e.printStackTrace();  
            }  
            return img;  
        }  
          
        public void createCodeImage(CodeModel info, OutputStream output){  
            BufferedImage bm = createCodeImage(info);  
            File logoFile = info.getLogoFile();  
            if(logoFile!=null && logoFile.exists()){  
                try{  
                BufferedImage logoImg = ImageIO.read(logoFile);  
                int logoWidth = logoImg.getWidth();  
                int logoHeight = logoImg.getHeight();  
                int width = bm.getWidth();  
                int height = bm.getHeight();  
                float ratio = info.getLogoRatio();  
                if(ratio>0){  
                    logoWidth = logoWidth>width*ratio ? (int)(width*ratio) : logoWidth;  
                    logoHeight = logoHeight>height*ratio ? (int)(height*ratio) : logoHeight;  
                }  
                int x = (width-logoWidth)/2;  
                int y = (height-logoHeight)/2;  
                Graphics g = bm.getGraphics();  
                g.drawImage(logoImg, x, y, logoWidth, logoHeight, null);  
                String desc = info.getDesc();  
                //int whiteWidth = 8;  
                if(desc!=null&&!"".equals(desc)){  
            
                    int whiteWidth = info.getHeight()-info.getBottomEnd()[1];  
    //              width = info.getBottomEnd()[0]-info.getBottomStart()[0];  
    //              height = info.getBottomEnd()[1]+1;  
                    Font font = new Font("黑体", Font.BOLD, info.getFontSize());  
                    int fontHeight = g.getFontMetrics(font).getHeight();  
                    //计算需要多少行  
                    int lineNum = 1;  
                    int currentLineLen = 0;  
                    for(int i=0;i<desc.length();i++){  
                        char c = desc.charAt(i);  
                        int charWidth = g.getFontMetrics(font).charWidth(c);  
                        if(currentLineLen+charWidth>width){  
                            lineNum++;  
                            currentLineLen = 0;  
                            continue;  
                        }  
                        currentLineLen += charWidth;  
                    }  
                    int totalFontHeight = fontHeight*lineNum;  
                    int wordTopMargin = 4;  
                    BufferedImage bm1 = new BufferedImage(width, height+totalFontHeight+wordTopMargin-whiteWidth, BufferedImage.TYPE_INT_RGB);  
                    Graphics g1 = bm1.getGraphics();  
                    if(totalFontHeight+wordTopMargin-whiteWidth>0){  
                    g1.setColor(Color.WHITE);  
                    g1.fillRect(0, height, width, totalFontHeight+wordTopMargin-whiteWidth);  
                    }  
                    g1.setColor(new Color(BLACK));  
                    g1.setFont(font);  
                    g1.drawImage(bm, 0, 0, null);  
                    width = info.getBottomEnd()[0]-info.getBottomStart()[0];  
                    height = info.getBottomEnd()[1]+1;  
                    currentLineLen = 0;  
                    int currentLineIndex = 0;  
                    int baseLo = g1.getFontMetrics().getAscent();  
                    for(int i=0;i<desc.length();i++){  
                        String c = desc.substring(i, i+1);  
                        int charWidth = g.getFontMetrics(font).stringWidth(c);  
                        if(currentLineLen+charWidth>width){  
                            currentLineIndex++;  
                            currentLineLen = 0;  
                            g1.drawString(c, currentLineLen + whiteWidth, height+baseLo+fontHeight*(currentLineIndex)+wordTopMargin);  
                            currentLineLen = charWidth;  
                            continue;  
                        }  
                        g1.drawString(c, currentLineLen+whiteWidth, height+baseLo+fontHeight*(currentLineIndex) + wordTopMargin);  
                        currentLineLen += charWidth;  
                    }  
                    g1.dispose();  
                    bm = bm1;  
                }  
                }catch(Exception e){  
                    e.printStackTrace();  
                }  
            }  
            try{  
                                      ImageIO.write(bm, info.getFormat(), output);  
            }catch(Exception e){  
                e.printStackTrace();  
            }  
        }  
          
        public void createCodeImage(CodeModel info, File file){  
            File parent = file.getParentFile();  
            if(!parent.exists())parent.mkdirs();  
            OutputStream output = null;  
            try{  
                output = new BufferedOutputStream(new FileOutputStream(file));  
                createCodeImage(info, output);  
                output.flush();  
            }catch(Exception e){  
                e.printStackTrace();  
            }finally{  
                try {  
                    output.close();  
                } catch (IOException e) {  
                    e.printStackTrace();  
                }  
            }  
        }    
        public void createCodeImage(CodeModel info, String filePath){  
            createCodeImage(info, new File(filePath));  
        }  
    }  





    import java.io.File;

    /**
     * 二维码的工具类.<p>
     * @param:
     * @创建人:chenfeng
     * @创建时间:2017-10-13 上午11:32:19
     */
    public class CodeModel {
        private String contents;  
        private int width = 400;  
        private int height = 400;  
        private String format = "png";  
        private String character_set = "utf-8";  
        private int fontSize = 40;  
        private File logoFile;  
        private float logoRatio = 0.20f;  
        private String desc;  
        private int whiteWidth;//白边的宽度  
        private int[] bottomStart;//二维码最下边的开始坐标  
        private int[] bottomEnd;//二维码最下边的结束坐标  
      
        public String getContents() {  
            return contents;  
        }  
      
        public void setContents(String contents) {  
            this.contents = contents;  
        }  
      
        public int getWidth() {  
            return width;  
        }  
      
        public void setWidth(int width) {  
            this.width = width;  
        }  
      
        public int getHeight() {  
            return height;  
        }  
      
        public void setHeight(int height) {  
            this.height = height;  
        }  
      
        public String getFormat() {  
            return format;  
        }  
      
        public void setFormat(String format) {  
            this.format = format;  
        }  
      
        public String getCharacter_set() {  
            return character_set;  
        }  
      
        public void setCharacter_set(String character_set) {  
            this.character_set = character_set;  
        }  
      
        public int getFontSize() {  
            return fontSize;  
        }  
      
        public void setFontSize(int fontSize) {  
            this.fontSize = fontSize;  
        }  
      
        public File getLogoFile() {  
            return logoFile;  
        }  
      
        public void setLogoFile(File logoFile) {  
            this.logoFile = logoFile;  
        }  
      
        public float getLogoRatio() {  
            return logoRatio;  
        }  
      
        public void setLogoRatio(float logoRatio) {  
            this.logoRatio = logoRatio;  
        }  
      
        public String getDesc() {  
            return desc;  
        }  
      
        public void setDesc(String desc) {  
            this.desc = desc;  
        }  
      
        public int getWhiteWidth() {  
            return whiteWidth;  
        }  
      
        public void setWhiteWidth(int whiteWidth) {  
            this.whiteWidth = whiteWidth;  
        }  
      
        public int[] getBottomStart() {  
            return bottomStart;  
        }  
      
        public void setBottomStart(int[] bottomStart) {  
            this.bottomStart = bottomStart;  
        }  
      
        public int[] getBottomEnd() {  
            return bottomEnd;  
        }  
      
        public void setBottomEnd(int[] bottomEnd) {  
            this.bottomEnd = bottomEnd;  
        }  
    }



    import java.io.File;

    public class Zxing {
    public static void main(String[] args) {
    CodeCreator create = new CodeCreator();
    CodeModel modelInfo = new CodeModel();
    modelInfo.setContents("http://www.baidu.com");
    modelInfo.setDesc("资产编号"+459875);
    modelInfo.setLogoFile(new File("D:/decode/fullgoalLoge.png"));
    create.createCodeImage(modelInfo, "D:/decode/dest."+modelInfo.getFormat());
    System.out.println("aaa");
    }
    }
    展开全文
  • .NET 图片合成,图片加文字,图片加二维码,可直接设置背景图绝对路径、要合成的图片地址、宽度、高度、margin-left、margin-top位置进行图片合成。 设置文字位置、文字大小进行图片文字合成,已在多个项目中使用。
  • 二维码加密解密工具

    2013-05-23 00:41:54
    可以对信息进行二维码加密,对二维码图片进行解密,很方便
  • 二维码加密解密源码

    热门讨论 2012-07-14 17:50:35
    二维码加密解密源码,手机可读出信息,生成的图片在workspace里!
  • --生成二维码--> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-extra</artifactId> <version>5.4.3</version> </dependency> <...

    1pom.xml

    <!--生成二维码-->
    <dependency>
       <groupId>cn.hutool</groupId>
       <artifactId>hutool-extra</artifactId>
       <version>5.4.3</version>
    </dependency>
    <dependency>
       <groupId>com.google.zxing</groupId>
       <artifactId>core</artifactId>
       <version>3.3.3</version>
    </dependency>
    
    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    2.工具类

    package com.example.QRcode.utils;
    
    import cn.hutool.extra.qrcode.QrCodeUtil;
    import cn.hutool.extra.qrcode.QrConfig;
    import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
    import org.springframework.core.io.DefaultResourceLoader;
    import org.springframework.core.io.ResourceLoader;
    import org.springframework.util.ResourceUtils;
    
    import javax.imageio.ImageIO;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.http.HttpServletResponse;
    import java.awt.*;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import java.io.InputStream;
    
    /**
     * @Description: 在图片上生成二维码并且在图片上添加文字response前端
     * @Auther: yjj
     * @Date: 2020/9/23 18:57
     */
    public class QRcodeImageFont {
    
        /***
         * 在一张背景图上添加二维码
         */
        public static void drawString(String content, HttpServletResponse response) throws Exception {
            BufferedImage image = addWater(content);
            Graphics2D gd = image.createGraphics();
            // 3、设置对线段的锯齿状边缘处理
            gd.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
            // 5、设置水印文字颜色
            gd.setColor(Color.red);
            // 6、设置水印文字Font
            gd.setFont(new Font("宋体", Font.BOLD, 20));
            // 8、第一参数->设置的内容,后面两个参数->文字在图片上的坐标位置(x,y)
            gd.drawString("测试文字", 90, 260);
            gd.dispose();
            // 输出图片
            ServletOutputStream outputStream = response.getOutputStream();
            ImageIO.write(image, "png",outputStream );
            System.out.println("添加水印完成");
            outputStream.flush();
            outputStream.close();
        }
    
        /***
         * 在一张背景图上添加二维码
         */
        public static BufferedImage addWater(String content) throws Exception {
            // 读取原图片信息
            //得到文件
            File file = ResourceUtils.getFile("classpath:static/img/code.png");
            //文件转化为图片
            Image srcImg = ImageIO.read(file);
            //获取图片的宽
            int srcImgWidth = srcImg.getWidth(null);
            //获取图片的高
            int srcImgHeight = srcImg.getHeight(null);
            // 加水印
            BufferedImage bufImg = new BufferedImage(srcImgWidth, srcImgHeight, BufferedImage.TYPE_INT_RGB);
            Graphics2D g = bufImg.createGraphics();
            g.drawImage(srcImg, 0, 0, srcImgWidth, srcImgHeight, null);
            //使用工具类生成二维码
            Image image = createQrCode(content,200,200);
            //将小图片绘到大图片上,500,300 .表示你的小图片在大图片上的位置。
            g.drawImage(image, 70, 300, null);
            //设置颜色。
            g.setColor(Color.WHITE);
            g.dispose();
            return bufImg;
        }
    
        private static BufferedImage createQrCode(String content, int width, int height) throws IOException {
            QrConfig config = new QrConfig(width, height);
    
            Image image = ImageIO.read(resourceLoader("classpath:static/img/onlyLogo.png"));
            config.setImg(image);
            config.setErrorCorrection(ErrorCorrectionLevel.H);
            return QrCodeUtil.generate(
                    content,
                    config);
        }
    
        public static InputStream resourceLoader(String fileFullPath) throws IOException {
            ResourceLoader resourceLoader = new DefaultResourceLoader();
            return resourceLoader.getResource(fileFullPath).getInputStream();
        }
    }

    3.底图和logo

     

    4.测试

    package com.example.QRcode.controller;
    
    import com.example.QRcode.utils.QRcodeImageFont;
    import com.example.QRcode.utils.QRcodeImageUtils;
    import com.example.QRcode.utils.QRcodeUtils;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * @Description:
     * @Auther: yjj
     * @Date: 2020/9/23 18:58
     */
    @RestController
    @RequestMapping(value = "/test")
    public class TestController {
    
        @GetMapping("/createQrCode")
        public void createQrCode(@RequestParam("url") String url, HttpServletResponse response) throws Exception {
           
            //在图片上生成二维码,并在图片上添加文字描述
            QRcodeImageFont.drawString(url,response);
        }
    }

    5.展示

    展开全文
  • 返回二维码图片到前端 返回二维码图片(带logo,带文字(解决中文乱码))前端 在项目中遇到一个需求,实现前端请求直接返回一张带文字描述二维码图片至页面 引入maven依赖: <dependency> <groupId>...
  • 主要介绍了canvas 下载二维码图片加水印的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 使用ThoughtWorks.QRCode.dll的文件生成二维码,简单快捷
  • 客户商品管理系统,每个商品需要生成一个二维码以便手机直接扫描查看商品信息,而对应的,二维码下方必须有一串唯一码,它们存在于一张图片上,以方便用户另存打印贴纸(不相干细节省略)。 分析 将链接生成二维码不...
  • * 1、将字符串生成二维码图片 * * @param str * @return */ public Bitmap Create2DCode(String str) { //生成二维矩阵,编码时要指定大小, //不要生成了图片以后再进行缩放,以防模糊导致识别失败 try { ...
  • 如何制作微信二维码指纹扫描图片

    千次阅读 2016-01-18 12:03:46
    最近微信的非常流行微信二维码指纹扫描关注的方式,很多人都不太会,但是又想做,这里为大家讲解一下如何制作微信二维码指纹扫描图片。这类图片其实做起来不难,都是一些基础技巧,特别有素材的情况下,更是简单...
  • 蓝牙二维码打印,工厂物料条码,绝对好用 资源下载地址:点击下载 扫描,显示蓝牙列表 public class DeviceListActivity extends AppCompatActivity { private static final String TAG = "DeviceListActivity"; ...
  • 这一篇文章是针对一篇给图片加二维码的一个完善,实现生成二维码以及生产带有log图片二维码 gradle引入这两个 compile("com.google.zxing:core:3.4.0") compile("com.google.zxing:javase:3.4.0") 一、...
  • 自己集成好二维码的包,上二维码工具类 要想水印,直接搜 加上水印,要想logo,直接搜 了logo,要想去白边,直接搜 去白边 public class QRCodeUtil { /** * 生成二维码Bitmap * * @param content 内容 *...
  • JAVA生成的二维码以及给二维码添加背景图片** 1.页面只需一行代码即可(用ajax请求得不响应,也可以用表单提交) window.location.href = “${ctx}/qrcode/getQrcodes?id=”+id 2.后台代码 public void ...
  • 图片加水压工具类,水印,图片大于3M时会报内存溢出。只对压缩后的图片进行水印,对图片进行压缩/放大图片到固定的大小,生成二维码工具类
  • jquery.qrcode二维码加文字描述和图片

    千次阅读 2019-07-04 09:25:01
    零、码仙励志 你害怕一件事,可还是要去做,那才是勇敢 一、下载 链接:https://pan.baidu.com/s/1nFb1Poi5Fd-ELcJphh2A8g 提取码:ciwm 如果链接失效,请联系QQ:194760901 二、使用 ...head>...
  • 废话不多说,直接代码 @PostMapping("/watermarkImages") public String watermarkImages() throws Exception { //获取原始图片文件 String srcImgPath = "F://bg1.png"; String fileNameType = ...
  • 做了个小项目,根据一些基本信息,生成二维码图片,并为二维码图片加上一幅图片水印,然后导出。    1、生成二维码  ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系其他...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,939
精华内容 10,775
关键字:

二维码怎么加到图片上