(1)     安装Jpype

用python调用jar包须要安装jpype扩展,在Ubuntu上能够直接使用apt-get安装jpype扩展

$ sudo apt-get install python-jpype

关于使用Jpype调用jar包的方式。请看http://blog.csdn.net/niuyisheng/article/details/9002926

(2)     得到zxing  jar包

使用zxing第三方库生成二维码图片,关于zxing的介绍能够看其github地址:https://github.com/zxing/zxing/

我们能够下载源代码编译安装包。也能够直接在网上下载jar包,我的jar包是直接下载的,例如以下:

关于zxing库的使用。能够查看http://mygirl1314520.iteye.com/blog/1912109

(3)     使用python调用jar

以下使用zxing库生成QR_CODE的二维码图片:

#!/usr/bin/python
#-*- encoding: utf-8 -*- from jpype import * # 启动JVM
startJVM(getDefaultJVMPath(), "-ea", ("-Djava.class.path=%s" % "./javase-2.2.jar:./core-2.2.jar")) # 载入须要使用到的类型
MultiFormatWriter = JClass("com.google.zxing.MultiFormatWriter")
BarcodeFormat = JClass("com.google.zxing.BarcodeFormat")
BitMatrix = JClass("com.google.zxing.common.BitMatrix")
File = JClass("java.io.File")
BufferedImage = JClass("java.awt.image.BufferedImage")
ImageIO = JClass("javax.imageio.ImageIO")
ByteArrayOutputStream = JClass("java.io.ByteArrayOutputStream")
MatrixToImageWriter = JClass("com.google.zxing.client.j2se.MatrixToImageWriter")
EncodeHintType = JClass("com.google.zxing.EncodeHintType")
Hashtable = JClass("java.util.Hashtable") StrToEncode = "This is a testing string"
# 设置Margin=0
hints = Hashtable()
hints.put(EncodeHintType.MARGIN, 0) matrix = MultiFormatWriter().encode(StrToEncode, BarcodeFormat.QR_CODE, 260, 260, hints)
image = MatrixToImageWriter.toBufferedImage(matrix)
ImageIO.write(image, "png", File("test.png")) # 关闭JVM
shutdownJVM()

(4)     执行

执行程序得到的图片例如以下。能够使用二维码扫描工具得到二维码里面保存的信息。

參考文献:

http://blog.csdn.net/niuyisheng/article/details/9002926:jpype的使用方式

http://mygirl1314520.iteye.com/blog/1912109:zxing库的使用方式

使用python调用zxing库生成二维码图片的更多相关文章

  1. Python使用QRCode模块生成二维码

    QRCode官网https://pypi.python.org/pypi/qrcode/5.1 简介python-qrcode是个用来生成二维码图片的第三方模块,依赖于 PIL 模块和 qrcode ...

  2. C# ZXing.Net生成二维码、识别二维码、生成带Logo的二维码(二)

    1.使用ZXint.Net生成带logo的二维码 /// <summary> /// 生成带Logo的二维码 /// </summary> /// <param name ...

  3. 基于Asp.Net Core,利用ZXing来生成二维码的一般流程

    本文主要介绍如何在.net环境下,基于Asp.Net Core,利用ZXing来生成二维码的一般操作.对二维码工作原理了解,详情见:https://blog.csdn.net/weixin_36191 ...

  4. php--------php库生成二维码和有logo的二维码

    php生成二维码和带有logo的二维码,上一篇博客讲的是js实现二维码:php--------使用js生成二维码. 今天写的这个小案例是使用php库生成二维码: 效果图:        使用了 php ...

  5. ZXing.dll 生成二维码 C# winform net4.5

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  6. 使用google zxing生成二维码图片

    生成二维码工具类: 1 import java.awt.geom.AffineTransform; 2 import java.awt.image.AffineTransformOp; 3 impor ...

  7. php调用phpqrcode.php生成二维码

    下载phpqrcode.php 下载地址: http://files.cnblogs.com/files/qhorse/phpqrcode.rar qrcode.php文件: <?php inc ...

  8. thinkphp调用phpqrcode.php生成二维码

    thinkphp3. 把phpqrcode文件夹放在ThinkPHP\Library\Vendor\下面 phpqrcode下载: http://files.cnblogs.com/files/qho ...

  9. JAVA根据URL生成二维码图片、根据路径生成二维码图片

    引入jar包 zxing-2.3.0.jar.IKAnalyzer2012_u6.jar 下载地址:https://yvioo.lanzous.com/b00nlbp6h                ...

随机推荐

  1. linux tail -f 和 tail -F的区别 && tail 的断点续传

    bash-1中启动如下进程while [ "true" ] ; do date >> test.log; sleep 1 ; done; bash-2中,tail -f ...

  2. tomcat 8 加 struts2的 java.lang.NoSuchFieldException: resourceEntries

    google发现已经有人把这个bug提交给了apache,issue地址,具体原因就是 Tomcat8 introduce super class WebappClassLoaderBase and ...

  3. C#中一道关于多线程的编程题

    题目的意思是这样的:让两个线程A和B将自己的ID轮番写入一个文件中,每个线程重复十次写入后执行一个回调函数,说“I'm OK”,就这样.我是一名QA,不是开发,出于兴趣报考了公司的C#课程考试,多线程 ...

  4. 【C#/WPF】键盘事件

    需求:按下回车键,触发事件. 搜MSDN时,看到的键盘事件是System.Windows.Forms里的,在WPF中没法用: https://msdn.microsoft.com/zh-tw/libr ...

  5. C语言 · 9-1九宫格

    算法提高 9-1九宫格   时间限制:1.0s   内存限制:256.0MB      问题描述 九宫格.输入1-9这9个数字的一种任意排序,构成3*3二维数组.如果每行.每列以及对角线之和都相等,打 ...

  6. Linux 含有ext 分区的镜像无法再Windows上拷贝的解决办法

    首先,参考http://www.cnblogs.com/chenfulin5/p/6649801.html 通过上面这个链接,做一个镜像出来. // 1. 制作一个镜像文件,里面包含200M左右的空间 ...

  7. [uart]UART中的硬件流控RTS与CTS

    转自:http://blog.csdn.net/zeroboundary/article/details/8966586 在RS232中本来CTS 与RTS 有明确的意义,但自从贺氏(HAYES ) ...

  8. SpringMVC 多视图解析器配置以及问题

    在SpringMVC模式当中可以通过如下配置来支持多视图解析 <!-- jsp jstl --> <bean id="JSPViewResolver" class ...

  9. SecureCRT连接AWS EC2云主机密码登录

    申请了亚马逊的EC2,要通过ssh 加密钥的形式登录,特别麻烦,而且感觉ssh登录AWS的云主机后好卡,这里是更改成用户名和密码的形式登录云主机,可以通过SecureCRT直接登录 1.首先通过ssh ...

  10. 【DataStructure】Linked Data Structures

    Arrayss work well for unordered sequences, and even for ordered squences if they don't change much. ...