Java生成艺术二维码也可以很简单

那么问题来了,走位一个 java 开发者而言,有没有什么开源库,可以简单迅速不烧脑的实现各种炫酷的二维码呢?

接下来我们将介绍下,如何借助 项目的 qrcode-plugin 来生成各种酷炫的二维码

1. 配置

我们主要使用的quick-media项目其中的一个插件:qrcode-plugin,目前已提供 maven 的引入方式,最新版本为2.1

<repositories>
    <repository>
        <id>yihui-maven-repo</id>
        <url>https://raw.githubusercontent.com/liuyueyi/maven-repository/master/repository</url>
    </repository>
</repositories>


<dependency>
    <groupId>com.github.hui.media</groupId>
    <artifactId>qrcode-plugin</artifactId>
    <version>2.2</version>
</dependency>

添加依赖之后,我们就可以愉快的玩耍了

2. 实例演示

接下来我们通过一系列的实例代码,来演示如何生成各种酷炫的二维码

a. 基本二维码

生成一个最常见的最普通的二维码,并保存到qr.png文件,一行代码即可

b. 颜色指定

默认的二维码为白底黑块,如果我希望生成白底蓝块(探测图形外青内红)的二维码,可以如下使用

c. 带 logo 二维码生成

logo 目前支持两种样式,一个是圆角 logo,一个是直接原图不做处理;下面是一个简单的圆角 logo,并带上边框的实例

下图展示了四张带 logo 的二维码

    原始 logo 直角带 logo 背景色 圆角带 logo 背景色 圆角带 logo 背景,边框

d. 指定背景图

背景图目前支持三种样式,分别是二维码全覆盖在背景图上,在背景图的自定区间进行绘制二维码,生成透明二维码但使用背景图进行渲染,下面

e. 几何样式二维码生成

默认的二维码的信息为黑色小方块,本插件提供了其他的几个常见的几何形式支持,如圆点,三角,钻石,六边形,八边形;通过指定 DrawStyle 参数即可

f. 图片填充

如果你有一套完整的素材,那么可以考虑用这些素材来生成一个更漂亮的二维码;

比如项目的测试中,给出了两套输出,一个爱心,一个集合图形

使用这种方式,需要稍微注意一下

    必须制定 DrawStyle 为图片模式 addImg(row, column, img) 来声明素材对应的应用场景,这个表示当出现一个 row 行,column 列都有信息时,用 img 来填充

下面是一个是 quick-media 提供的两种样式模板

g. 动态二维码

接下来介绍一下动态二维码的生成,和背景图的使用姿势基本上完全以往,唯一的区别就是背景图为 gif 动图

h. 综合

II. 其他

1. : https://liuyueyi.github.io/hexblog

    项目地址:

2. 声明

尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现 bug 或者有更好的建议,欢迎批评指正,不吝感激

一灰灰 blog

经验分享 程序员 微信小程序 职场和发展