精华内容
下载资源
问答
  • 图片和文字加饭二维码里面,不带logo标识什么的。有没有能教的。</p>
  • html+JS生成二维码并与另外一张图片合并,形成一张带二维码图片 跪求html+JS代码!!!!!!! 一个输入框输入网址,用以输入字符生成二维码 一个本地图片img 点击生成二维码后本地图片在右下角合成...
  • 二维码中,放入图片,遮挡一部分是被允许的。 二维码在少许损伤的情况下还可以读取出来,图片可以放置的位置如图的黄色区域。(具体可以放多大要看二维码生成时的纠错能力)二维码的纠错级别:纠错级别越高,生成...

    在二维码中,放入图片,遮挡一部分是被允许的。
    二维码在少许损伤的情况下还可以读取出来,图片可以放置的位置如图的黄色区域。(具体可以放多大要看二维码生成时的纠错能力)
    二维码的纠错级别:
    纠错级别越高,生成图片会越大。
    L 水平 7%的字码可被修正
    M 水平 15%的字码可被修正
    Q 水平 25%的字码可被修正
    H 水平 30%的字码可被修正
    具体可以测试一下,究竟能不能被扫描出来。

    该博文首发于新浪博客dqx-低权限。

    上面试验的几个二维码图片是Photoshop做的,用PS做非常简单,直接两个图层,把图片图层放到二维码图层上面,调整上面图片的大小即可。
    如何用在Lodop生成的二维码中添加图片呢?
    Lodop本身没有图片+二维码的组合类型,但是可以通过二维码和图片的叠加实现。
    打印项叠加,参考本博客的另一篇博文:
    Lodop调整打印项输出顺序 覆盖与层级(首发于dqx-低权限,目前在该博文中也有)
    上面这个链接里的博文里有图片和图片叠加,图片和文字叠加等,简单来说,叠加顺序就是打印项的顺序,后输出的在上面,想要实现里面带图片的二维码。
    先输出二维码,然后输出相应的图片,打印二维码带图片。
    LODOP.ADD_PRINT_BARCODE语句在图片LODOP.ADD_PRINT_IMAGE之前即可。

    转载于:https://www.cnblogs.com/huaxie/p/10469020.html

    展开全文
  • 在两位大神的原有的资源基础上合而为一,快速全屏扫描出二维码,感谢前人的无私。 使用eclipse,java,zxing,android
  • 这里看了一篇博客:Android Zxing二维码扫描图片拉伸,用了上面的办法, 成功的解决图片拉伸问题。 解决方法如下: 修改CameraConfigurationManager.Java里面的initFromCameraParameters方法: void ...
  • 关于生成二维码图片:Android下使用zxing包生成二维码里提供的QRCodeUtil就是一切了。非常的方便。 关于解析二维码图片,获取内容: public Result parseInfoFromBitmap(Bitmap bitmap) { int[] pixels = new int...

    关于生成二维码图片:Android下使用zxing包生成二维码里提供的QRCodeUtil就是一切了。非常的方便。

    关于解析二维码图片,获取内容:

    public Result parseInfoFromBitmap(Bitmap bitmap) {
        int[] pixels = new int[bitmap.getWidth() * bitmap.getHeight()];
        bitmap.getPixels(pixels, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());
        LogUtils.w("### pixels dest==" + Arrays.toString(pixels));
    
        RGBLuminanceSource source = new RGBLuminanceSource(bitmap.getWidth(),
                bitmap.getHeight(), pixels);
        GlobalHistogramBinarizer binarizer = new GlobalHistogramBinarizer(source);
        BinaryBitmap image = new BinaryBitmap(binarizer);
        Result result = null;
        try {
            result = new QRCodeReader().decode(image);
            return result;
        } catch (NotFoundException e) {
            e.printStackTrace();
        } catch (ChecksumException e) {
            e.printStackTrace();
        } catch (FormatException e) {
            e.printStackTrace();
        }
    
        return null;
    
    }

    调用:

    view..setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            LogUtils.w("扫描二维码");
            String path = new File(getCacheDir(), "zx.jpg").getAbsolutePath();
            Bitmap bitmap = BitmapFactory.decodeFile(path);
            Result result = parseInfoFromBitmap(bitmap);
            if (result != null) {
                LogUtils.w(result);
                LogUtils.i("result info==" + result.getText());
            }
        }
    });

    前提:build.gradle里面添加依赖:

    implementation 'com.google.zxing:core:3.3.1'

    我这里是3.3.0,也可以使用更新的,比如3.3.1

    就这样了,图片,你自己去拍照,或者图片里面选择好了。这里提供的仅仅是解析二维码图片的逻辑

    二维码图片生成的逻辑,我顶部的链接里面提供了。


    以上。

    =====================================================

    关于解析二维码,再说一下,核心代码就是:new QRCodeReader().decode(xx);

    然后就是把自己的数据(bitmap)封装成它.decode()所能解析的对象即可。

    生成二维码同理。

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

    2016-11-27 16:40:11
    PHP生成二维码图片,放到ThinkPHP的扩展库里面可以直接使用,或者根据需要更改文件名!
  • 在Linux下将一张图片压缩到可以在二维码中保存,之后再将这个图片保存在二维码中。 实现的效果就是当用手机扫描这个生成的二维码时,扫描出来的就是之前被压缩后的图片
  • 基于google Zxing实现二维码的生成,识别和长按识别的效果,仿微信选择相册里的二维码图片直接识别的效果 ,选择相册在主页面点击打开摄像机进行扫描,进入扫描页面,在里面有选择相册的选项,直接点击就可以调用...
  • 使用zxing生成带logo的二维码图片,自动调节logo图片相对二维码图片的大小 可选是否带logo,可选是否保存二维码图片;结果返回base64编码的图片数据字符串 页面显示: 引用maven zxing-core jar com.google.zxing...
    使用zxing生成带logo的二维码图片,自动调节logo图片相对二维码图片的大小
     * 可选是否带logo,可选是否保存二维码图片;结果返回base64编码的图片数据字符串
     * 页面显示:<img src="data:image/png;base64,${imageBase64QRCode}"/>
     * maven jar
     * <dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>core</artifactId>
            <version>3.1.0</version>

        </dependency>

    二维码生成工具类下载:点击打开链接

    原作者 http://www.kancloud.cn/digest/javaxviii/126763

    我自己拿来修改定制了下


    1.有logo的二维码


    2.没有logo的二维码


    3.列表直接读取保存在数据库中的二维码base64编码的字符串,显示到页面



    工具类,可以自己定制实现生成图片大小等:

    package com.niuhuohuo.assets.utils;
    
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics2D;
    import java.awt.image.BufferedImage;
    import java.io.ByteArrayOutputStream;
    import java.io.File;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.Map;
    
    import javax.imageio.ImageIO;
    
    import org.apache.commons.codec.binary.Base64;
    
    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;
    
    /**
     * 使用zxing生成带logo的二维码图片,自动调节logo图片相对二维码图片的大小
     * 可选是否带logo,可选是否保存二维码图片;结果返回base64编码的图片数据字符串
     * 页面显示:<img src="data:image/png;base64,${imageBase64QRCode}"/>
     * maven jar
     * <dependency>
    	    <groupId>com.google.zxing</groupId>
    	    <artifactId>core</artifactId>
    	    <version>3.1.0</version>
    	</dependency>
     * @author nhhyx
     * @date 20170314
     */
    public class ZXingCodeUtils {
    	private static final int QRCOLOR = 0xFF000000;   //默认是黑色
        private static final int BGWHITE = 0xFFFFFFFF;   //背景颜色
    
        public static void main(String[] args) throws WriterException  
        {  
            try  
            {  
            	/* 调用试例1,从项目中获取logo图片,生成的二维码图片也保存到项目指定文件夹中,使用myeclipse等时,生成的二维码图片在tomcat/webapps/项目中 */        	
            	// 生成二维码图片并将base64编码的数据更新到数据库,data:image/png;base64,***
    			// logo图片
    			/*String logoUrl = request.getSession().getServletContext()
    					.getRealPath("/WEB-INF/assets/admin/img/temp/logo.png");
    		    File logoFile = new File(logoUrl);
            	// 输出二维码路径
            	String outPath = request.getSession().getServletContext()
    					.getRealPath("/WEB-INF/assets/qr"); 
            	String base64Img = ZXingCodeUtils.createQRCode(logoFile, "这是二维码里面的内容,可以是http网址", outPath, 
            			400, 400, "这是二维码图片下的文字,随图片一起生成");*/
            	
            	/* 调用试例2 */ 
            	//String filePath = request.getSession().getServletContext().getRealPath("/") + "resources/images/logoImages/llhlogo.png";
            	/* logo图片路径和二维码输出路径
            	String logoUrl = request.getSession().getServletContext()
    					.getRealPath("/WEB-INF/assets/admin/img/temp/logo.png");
            	String outPath = request.getSession().getServletContext()
    					.getRealPath("/WEB-INF/assets/qr");*/
            	//filePath是二维码logo的路径,但是实际中我们是放在项目的某个路径下面的,所以路径用上面的,把下面的注释就好
            	String logoPath = "C:\\logo.png";
            	File logoFile = new File(logoPath);
            	String outPath = "C:";
            	createQRCode(logoFile, "2asdf5", outPath, 400, 400, "这是二维码下的文字");
            }  
            catch (Exception e)  
            {  
                e.printStackTrace();  
            }  
        }  
    
        /**
         * 生成带logo的二维码图片
         * @param logoPath 二维码图片中间包含的logo图片文件,如果不存在,则生成不带logo图片的二维码
         * @param content 内容或跳转路径
         * @param outPath 二维码输出路径,如果为""则表示不输出图片到指定位置,只返回base64图片字符串
         * @param qrImgWidth 二维码图片宽度
         * @param qrImgHeight 二维码图片高度(有文字的话会加高45px)
         * @param productName 二维码图片下的文字
         * @return
         */
        public static String createQRCode(File logoFile, String content, String outPath, 
        		int qrImgWidth, int qrImgHeight, String productName)
        {
            try
            {  
            	ZXingCodeUtils zp = new ZXingCodeUtils();
            	// 生成二维码bufferedImage图片
                BufferedImage bim = zp.getQRCODEBufferedImage(content, BarcodeFormat.QR_CODE, qrImgWidth, qrImgHeight, zp.getDecodeHintType());
                
                // 如果有文字,则二维码图片高度增加45px
                if(!"".equals(productName)){
                	qrImgHeight += 45;
            	}
                // 给二维码图片添加Logo并保存到指定位置,返回base64编码的图片数据字符串
                return zp.createLogoQRCode(outPath, qrImgWidth, qrImgHeight, bim, logoFile, new LogoConfig(), productName);
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
            return null;
        }
    
        /**
         * 给二维码图片添加Logo图片并生成最终二维码图片
         * @param outPath 输出二维码图片的路径,如果为""则表示不输出图片到指定位置,只返回base64图片字符串
         * @param qrImgWidth 生成二维码图片的宽度
         * @param qrImgHeight 生成二维码图片的高度
         * @param bim 读取二维码图片BufferedImage对象
         * @param logoPic logo图片File文件
         * @param logoConfig logo配置
         * @param productName 二维码图片下的文字
         * @return 返回图片base64编码后的字符串
         */
        public String createLogoQRCode(String outPath, int qrImgWidth, int qrImgHeight, BufferedImage bim, File logoPic, LogoConfig logoConfig, String productName)
        {
            try
            {
                /**
                 * 读取二维码图片,并构建绘图对象
                 */
                BufferedImage image = bim;
                
                // 如果logo图片存在,则加入到二维码图片中
                if(logoPic != null && logoPic.exists()){
    	            Graphics2D g = image.createGraphics();
    	
    	            /**
    	             * 读取Logo图片
    	             */
    	            BufferedImage logo = ImageIO.read(logoPic);
    	            /**
    	             * 设置logo的大小,本人设置为二维码图片的20%,因为过大会盖掉二维码
    	             */
    	            int widthLogo = logo.getWidth(null)>image.getWidth()*3/10?(image.getWidth()*3/10):logo.getWidth(null), 
    	                heightLogo = logo.getHeight(null)>image.getHeight()*3/10?(image.getHeight()*3/10):logo.getWidth(null);
    	
    	            /**
    	             * logo放在中心
    	             */
    	             int x = (image.getWidth() - widthLogo) / 2;
    	             int y = (image.getHeight() - heightLogo) / 2;
    	             /**
    	             * logo放在右下角
    	             *  int x = (image.getWidth() - widthLogo);
    	             *  int y = (image.getHeight() - heightLogo);
    	             */
    
    	            //开始绘制图片
    	            g.drawImage(logo, x, y, widthLogo, heightLogo, null);
    //            	g.drawRoundRect(x, y, widthLogo, heightLogo, 15, 15);
    //            	g.setStroke(new BasicStroke(logoConfig.getBorder()));
    //            	g.setColor(logoConfig.getBorderColor());
    //            	g.drawRect(x, y, widthLogo, heightLogo);
                	g.dispose();
                	
                	logo.flush();
                }
    
                //把商品名称添加上去,商品名称不要太长,这里最多支持两行。太长就会自动截取
                if (productName != null && !productName.equals("")) {
                    //新的图片,把带logo的二维码下面加上文字
                    BufferedImage outImage = new BufferedImage(qrImgWidth, qrImgHeight, BufferedImage.TYPE_4BYTE_ABGR);
                    Graphics2D outg = outImage.createGraphics();
                    //画二维码到新的面板
                    outg.drawImage(image, 0, 0, image.getWidth(), image.getHeight(), null);
                    //画文字到新的面板
                    outg.setColor(Color.BLACK); 
                    outg.setFont(new Font("宋体",Font.BOLD, 26)); //字体、字型、字号 
                    int strWidth = outg.getFontMetrics().stringWidth(productName);
                    if (strWidth > 399) {
    //                  //长度过长就截取前面部分
    //                  outg.drawString(productName, 0, image.getHeight() + (outImage.getHeight() - image.getHeight())/2 + 5 ); //画文字
                        //长度过长就换行
                        String productName1 = productName.substring(0, productName.length()/2);
                        String productName2 = productName.substring(productName.length()/2, productName.length());
                        int strWidth1 = outg.getFontMetrics().stringWidth(productName1);
                        int strWidth2 = outg.getFontMetrics().stringWidth(productName2);
                        outg.drawString(productName1, 200  - strWidth1/2, image.getHeight() + (outImage.getHeight() - image.getHeight())/2 + 12 );
                        BufferedImage outImage2 = new BufferedImage(400, 485, BufferedImage.TYPE_4BYTE_ABGR);
                        Graphics2D outg2 = outImage2.createGraphics();
                        outg2.drawImage(outImage, 0, 0, outImage.getWidth(), outImage.getHeight(), null);
                        outg2.setColor(Color.BLACK); 
                        outg2.setFont(new Font("宋体", Font.BOLD, 26)); //字体、字型、字号 
                        outg2.drawString(productName2, 200  - strWidth2/2, outImage.getHeight() + (outImage2.getHeight() - outImage.getHeight())/2 + 5 );
                        outg2.dispose(); 
                        outImage2.flush();
                        outImage = outImage2;
                    }else {
                        outg.drawString(productName, 200  - strWidth/2 , image.getHeight() + (outImage.getHeight() - image.getHeight())/2 + 12 ); //画文字 
                    }
                    outg.dispose(); 
                    outImage.flush();
                    image = outImage;
                }
                //logo.flush();
                image.flush();
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                baos.flush();
                ImageIO.write(image, "png", baos);
    
                // 如果输出路径为空,则不保存二维码图片到指定路径下
                if(!"".equals(outPath.trim())){
    	            //二维码生成的路径,但是实际项目中,我们是把这生成的二维码显示到界面上的,因此下面的折行代码可以注释掉
    	            //可以看到这个方法最终返回的是这个二维码的imageBase64字符串
    	            //前端用 <img src="data:image/png;base64,${imageBase64QRCode}"/> 其中${imageBase64QRCode}对应二维码的imageBase64字符串
    	            ImageIO.write(image, "png", new File(outPath + "\\" + new Date().getTime() + ".png"));   
                }
                
                // 获取base64编码的二维码图片字符串
                String imageBase64QRCode = Base64.encodeBase64String(baos.toByteArray());
                baos.close();
                return imageBase64QRCode;
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
            return null;
        }
    
        /**
         * 构建初始化二维码
         *
         * @param bm
         * @return
         */
        public BufferedImage fileToBufferedImage(BitMatrix bm)
        {
            BufferedImage image = null;
            try
            {
                int w = bm.getWidth(), h = bm.getHeight();
                image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
    
                for (int x = 0; x < w; x++)
                {
                    for (int y = 0; y < h; y++)
                    {
                        image.setRGB(x, y, bm.get(x, y) ? 0xFF000000 : 0xFFCCDDEE);
                    }
                }
    
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
            return image;
        }
    
        /**
         * 生成二维码bufferedImage图片
         *
         * @param content
         *            编码内容
         * @param barcodeFormat
         *            编码类型
         * @param width
         *            图片宽度
         * @param height
         *            图片高度
         * @param hints
         *            设置参数
         * @return
         */
        public BufferedImage getQRCODEBufferedImage(String content, BarcodeFormat barcodeFormat, int width, int height, Map<EncodeHintType, ?> hints)
        {
            MultiFormatWriter multiFormatWriter = null;
            BitMatrix bm = null;
            BufferedImage image = null;
            try
            {
                multiFormatWriter = new MultiFormatWriter();
                // 参数顺序分别为:编码内容,编码类型,生成图片宽度,生成图片高度,设置参数
                bm = multiFormatWriter.encode(content, barcodeFormat, width, height, hints);
                int w = bm.getWidth();
                int h = bm.getHeight();
                image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
    
                // 开始利用二维码数据创建Bitmap图片,分别设为黑(0xFFFFFFFF)白(0xFF000000)两色
                for (int x = 0; x < w; x++)
                {
                    for (int y = 0; y < h; y++)
                    {
                        image.setRGB(x, y, bm.get(x, y) ? QRCOLOR : BGWHITE);
                    }
                }
            }
            catch (WriterException e)
            {
                e.printStackTrace();
            }
            return image;
        }
    
        /**
         * 设置二维码的格式参数
         *
         * @return
         */
        public Map<EncodeHintType, Object> getDecodeHintType()
        {
            // 用于设置QR二维码参数
            Map<EncodeHintType, Object> hints = new HashMap<EncodeHintType, Object>();
            // 设置QR二维码的纠错级别(H为最高级别)具体级别信息
            hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
            // 设置编码方式
            hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
            hints.put(EncodeHintType.MARGIN, 0);
            hints.put(EncodeHintType.MAX_SIZE, 350);
            hints.put(EncodeHintType.MIN_SIZE, 100);
    
            return hints;
        }
    }
    
    /**
     * logo的配置
     * @author nhhyx
     *
     */
    class LogoConfig
    {
        // logo默认边框颜色
        public static final Color DEFAULT_BORDERCOLOR = Color.WHITE;
        // logo默认边框宽度
        public static final int DEFAULT_BORDER = 2;
        // logo大小默认为照片的1/5
        public static final int DEFAULT_LOGOPART = 5;
    
        private final int border = DEFAULT_BORDER;
        private final Color borderColor;
        private final int logoPart;
    
        /**
         * Creates a default config with on color {@link #BLACK} and off color
         * {@link #WHITE}, generating normal black-on-white barcodes.
         */
        public LogoConfig()
        {
            this(DEFAULT_BORDERCOLOR, DEFAULT_LOGOPART);
        }
    
        public LogoConfig(Color borderColor, int logoPart)
        {
            this.borderColor = borderColor;
            this.logoPart = logoPart;
        }
    
        public Color getBorderColor()
        {
            return borderColor;
        }
    
        public int getBorder()
        {
            return border;
        }
    
        public int getLogoPart()
        {
            return logoPart;
        }
    }
    


    展开全文
  • zxing二维码生成扫描,识别二维码图片,长按识别二维码调用方便简洁,可选择导入as的modules 只需要在bulid.gradle(app) 中的dependencies :里面 compile project(path: ':BarCode')一下就能用。
  • 鉴于之前做项目二维码的生成,解析用的都是zxing,zbar这些第三方的东西,用起来也很方便;最近闲来无事,了解了下ios sdk对于二维码的支持,上一篇文章介绍的是关于二维码的扫描:...

    鉴于之前做项目二维码的生成,解析用的都是zxing,zbar这些第三方的东西,用起来也很方便;最近闲来无事,了解了下ios sdk对于二维码的支持,上一篇文章介绍的是关于二维码的扫描:http://my.oschina.net/u/1432769/blog/542799; 这篇介绍下CIFilter、CIDetector实现二维码的过程需要注意的一些问题

    一、生成

        二维码的生成可以使用coreimage.framework这个里面的CIFilter类来生成

    + (CIImage *)ciImageFromString:(NSString *)qrString {

        NSData *stringData = [qrString dataUsingEncoding:NSUTF8StringEncoding];

        CIFilter *qrFilter = [CIFilter filterWithName:@"CIQRCodeGenerator"];

        [qrFilter setValue:stringData forKey:@"inputMessage"];

        [qrFilter setValue:@"M" forKey:@"inputCorrectionLevel"];

        return qrFilter.outputImage;

    }

    + (UIImage *)createNonInterpolatedUIImageFormCIImage:(CIImage *)image withSize:(CGFloat) size {

        CGRect extent = CGRectIntegral(image.extent);

        CGFloat scale = MIN(size/CGRectGetWidth(extent), size/CGRectGetHeight(extent));

        // 创建bitmap;

        size_t width = CGRectGetWidth(extent) * scale;

        size_t height = CGRectGetHeight(extent) * scale;

        CGColorSpaceRef cs = CGColorSpaceCreateDeviceGray();

        CGContextRef bitmapRef = CGBitmapContextCreate(nil, width, height, 80, cs, (CGBitmapInfo)kCGImageAlphaNone);

        CIContext *context = [CIContext contextWithOptions:nil];

        CGImageRef bitmapImage = [context createCGImage:image fromRect:extent];

        CGContextSetInterpolationQuality(bitmapRef, kCGInterpolationNone);

        CGContextScaleCTM(bitmapRef, scale, scale);

        CGContextDrawImage(bitmapRef, extent, bitmapImage);

        // 保存bitmap到图片

        CGImageRef scaledImage = CGBitmapContextCreateImage(bitmapRef);

        CGContextRelease(bitmapRef);

        CGImageRelease(bitmapImage);

        return [UIImage imageWithCGImage:scaledImage];

    }

    生成没有碰到什么问题,直接调用上面的就可以生成简单的二维码,(其他的包括颜色,或者加上logo,不在这列)


    二、解析

         在解析指定image的时候,可以用 CIDetector(这个类还可以进行人脸识别等功能)来进行,主要解析的过程,代码比较简单,如下

    + (NSString *)stringFromCiImage:(CIImage *)ciimage {

        NSString *content = @"" ;


        if (!ciimage) {

            return content;

        }


        CIDetector *detector = [CIDetector detectorOfType:CIDetectorTypeQRCode

                                                  context:[CIContext contextWithOptions:nil]

                                                  options:@{CIDetectorAccuracy:CIDetectorAccuracyHigh}];

        NSArray *features = [detector featuresInImage:ciimage];

        if (features.count) {


            for (CIFeature *feature in features) {

                if ([feature isKindOfClass:[CIQRCodeFeature class]]) {

                    content = ((CIQRCodeFeature *)feature).messageString;

                    break;

                }

            }

        } else {

            NSLog(@"未正常解析二维码图片请确保iphone5/5c以上的设备");

        }


        return content;

    }

    但是,由于本人用的是5c进行调试:

    1、发现每次获取的features都是nil, 无法正常解析,通过上网查阅资料发现,有说让换图片,有让用真机的,很多种说法;但是各种尝试各种失败告终,最后在stackoverflow看到关于5s及CIDetectorTypeQRCode的问题,得到提示,然后果断换了mini4进行调试,发现可以正常解析,接着拿了mini2调试,发现依旧可以,只有手上的5c是没法正常解析

    2、通过“1”中的调试,猜测可能CIDetector的二维码解析需要是5、5c以后的设备,继续上网查阅,发现一个文章里面,作者提到Ta的解释,用真机或者5s以上的模拟器可以正常解析,那么通过本人根据提示使用模拟器调试,发现确实需要是5s及以上模拟器才能正常解析

    展开全文
  • $ composer require endroid/qr-code 基础版本 use Endroid \ QrCode \ QrCode ; $qrCode = ...//@去操作这张图片 //@删除文件 unlink( $path ); exit; 效果图如下:
  • 图片加文字,网上有很多,下面我不想在图片里面加文字,而是把文字加在图片上面当做标题,这样的做法可以不破坏原来的图片,另外还加了一个方法,除了加文字,还可以随意拼接图片,需要使用到pillow库 安装...
  • getCode() { axios({ method: "get", url: "admin/verify", responseType: "arraybuffer", // 最为关键 }).then((res)=> { ... }, 登录验证码后端返回的二进制 进行如上操作 得到的imgUrl 直接放到img标签里面就可以了
  • # 生成带logo的二维码图片 def get_qr(str, logo, save): # 参数配置 qr = qrcode.QRCode( version=4, # 设置二维码尺寸大小,1~40 error_correction=qrcode.constants.ERROR_CORRECT_H, # 调整容错率 L:7% M:15%...
  • java生成的二维码图片

    2009-07-31 15:40:01
    java生成的二维码图片里面有源码和使用说明,希望大家赶快去研究,二维码将广泛应用于各个行业。
  • 二维码中间生成的图片我用的是minpmap里面图片logo: Bitmap logo = BitmapFactory.decodeResource(context.getResources(), R.drawable.logo); Bitmap bm = QRCodeUtil.createQRImage(context,text, logo); ...
  • C# 利用QRCode生成二维码图片

    万次阅读 多人点赞 2014-01-18 10:04:30
    网上生成二维码的组件是真多,可是真正好用的,并且生成速度很快的没几个,QRCode就是我在众多中找到的,它的生成速度快。但是网上关于它的使用说明,真的太少了,大都是千篇一律的复制粘贴。这是本要用它做了一个...
  • 要将中文信息生成为二维码,使用了有源码的QRCode,但它默认不支持中文 修改库QRCodeLib中的类QRCodeEncoder.cs 将public virtual Bitmap Encode(String content)里面的return Encode(content, Encoding.Unicode);...
  • js生成二维码图片并打印

    热门讨论 2016-02-24 09:22:13
    技术:js ,jquery ,jquery.jqprint-0.3.js来打印图片,jquery.qrcode.min.js生成二维码,另参杂多项前端小技术,例如:CANVAS转换图片,IMG添加id,js定时器,新窗口弹出....所有一应插件均已完善,不用多余下载和...
  • spring boot整合谷歌zxing生成二维码图片 刚写完点击验证码,又来数字验证码,现在再来个二维码,前阵子被poi全家桶坑了,现在又来码,不过谷歌还是牛皮,现成的直接拿来用。 引入依赖: <dependency> <...
  • 上传二维码图片解析二微码!上传二维码提交到后台识别码里面的类容!
  • Android 解析二维码图片

    千次阅读 2016-12-01 15:52:24
    现新增需求是将用户存储到相册中的二维码图片识别并解析出来。网上也有很多这样解析的例子,我这篇博客也是在借鉴他们提供的方法之后写出来的,整个解析过程都差不多,不同的是,因为每个人集成的项目会有所不同,...
  • 用QRcode生成二维码时,图片底部怎么添加文字,就像摩拜车上二维码一样
  • 可以通过读取图片中的信息,来逆向识别二维码的内容, 主要使用了ZBarCodeImage这个类的功能。 而这个类需要在服务器上安装php-zbarcode 具体安装方法见https://www.cnblogs.com/mengzhilva/p/10670228.h...
  • js生成二维码以及插入图片

    千次阅读 2018-06-23 10:39:44
    不同属性值的变化,二维码的变化效果:https://larsjung.de/jquery-qrcode/latest/demo/进入demo中,审查元素查看里面引用的js文件,你会发现jquery-qrcode-0.14.0.js,这个版本支持二维码中插入图片。下面是我写的...
  • 简单业务说明:生成图片(此为生成二维码图片)之后,以流方式输出。 代码如下: /** * 下载二维码二维码存放查询当前学时记录的链接 *@description *@author **** *@date 2018-8-22下午2:17:06 * @...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,347
精华内容 7,738
关键字:

二维码里面的图片