5 Star 4 Fork 0

Gitee 极速下载 / qrgen

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/kenglxn/QRGen.git
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Build Status Release

QRGen: a simple QRCode generation api for java built on top ZXING

Please consider sponsoring the work on QRGen

Dependencies:

ZXING: http://code.google.com/p/zxing/

Get it:

QRGen consists of three modules: core, javase and android.

As of 2.1.0 QRGen is available from jitpack.io. QRGen is no longer deployed to maven central (ref: #61). Older releases are available from Maven Central Repository.

As of 3.0.1 java 11 is required. Latest java 8 version is 2.7.0.

Maven:

    <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
    </repositories>

Gradle:

    allprojects {
        repositories {
            // ...
            maven { url "https://jitpack.io" }
        }
    }
Nexus proxy setup for jitpack

See https://github.com/jitpack/jitpack.io/issues/506 for solution.

(thanks to @LTheobald for the heads up)

Java Application

When developing a Java application you need to add javase module to your list of dependencies. The required core module will be added automatically by your build system:

Gradle:

    dependencies {
        implementation 'com.github.kenglxn.QRGen:javase:3.0.1'
    }

Maven:

    <dependencies>
        <dependency>
            <groupId>com.github.kenglxn.QRGen</groupId>
            <artifactId>javase</artifactId>
            <version>3.0.1</version>
        </dependency>
    </dependencies>
Android

When you want to use QRGen inside your android application you need to add the android module to your list of dependencies. The required core module will be added automatically by your build system:

Gradle:

    dependencies {
        implementation 'com.github.kenglxn.QRGen:android:3.0.1'
    }

Maven:

    <dependencies>
        <dependency>
            <groupId>com.github.kenglxn.QRGen</groupId>
            <artifactId>android</artifactId>
            <version>3.0.1</version>
        </dependency>
    </dependencies>

Or you can clone and build yourself:

    git clone git://github.com/kenglxn/QRGen.git
    cd QRGen/
    mvn clean install

Usage:

public class Demo {
    public static void main(String[] args) {
        // get QR file from text using defaults
        File file = QRCode.from("Hello World").file();

        // get QR stream from text using defaults
        ByteArrayOutputStream stream = QRCode.from("Hello World").stream();

        // override the image type to be JPG
        QRCode.from("Hello World").to(ImageType.JPG).file();
        QRCode.from("Hello World").to(ImageType.JPG).stream();

        // override image size to be 250x250
        QRCode.from("Hello World").withSize(250, 250).file();
        QRCode.from("Hello World").withSize(250, 250).stream();

        // override size and image type
        QRCode.from("Hello World").to(ImageType.GIF).withSize(250, 250).file();
        QRCode.from("Hello World").to(ImageType.GIF).withSize(250, 250).stream();

        // override default colors (black on white)
        // notice that the color format is "0x(alpha: 1 byte)(RGB: 3 bytes)"
        // so in the example below it's red for foreground and yellowish for background, both 100% alpha (FF).
        QRCode.from("Hello World").withColor(0xFFFF0000, 0xFFFFFFAA).file();

        // supply own outputstream
        QRCode.from("Hello World").to(ImageType.PNG).writeTo(new ByteArrayOutputStream());

        // supply own file name
        QRCode.from("Hello World").file("QRCode");

        // supply charset hint to ZXING
        QRCode.from("Hello World").withCharset("UTF-8");

        // supply error correction level hint to ZXING
        QRCode.from("Hello World").withErrorCorrection(ErrorCorrectionLevel.L);

        // supply any hint to ZXING
        QRCode.from("Hello World").withHint(EncodeHintType.CHARACTER_SET, "UTF-8");

        // encode contact data as vcard using defaults
        VCard johnDoe = new VCard("John Doe")
                .setEmail("john.doe@example.org")
                .setAddress("John Doe Street 1, 5678 Doestown")
                .setTitle("Mister")
                .setCompany("John Doe Inc.")
                .setPhoneNumber("1234")
                .setWebsite("www.example.org");
        QRCode.from(johnDoe).file();

        // encode email data
        EMail email = new EMail("John.Doe@example.org");
        QRCode.from(email).file();

        // encode mms data
        MMS mms = new MMS("8675309", "Hello Jenny");
        QRCode.from(mms).file();

        // encode sms data
        SMS sms = new SMS("8675309", "Hello Jenny");
        QRCode.from(sms).file();

        // encode MeCard data
        MeCard janeDoe = new MeCard("Jane Doe");
        janeDoe.setEmail("john.doe@example.org");
        janeDoe.setAddress("John Doe Street 1, 5678 Doestown");
        janeDoe.setTelephone("1234");
        QRCode.from(janeDoe).file();

        // if using special characters don't forget to supply the encoding
        VCard johnSpecial = new VCard("Jöhn Dɵe")
                .setAddress("ëåäöƞ Sträät 1, 1234 Döestüwn");
        QRCode.from(johnSpecial).withCharset("UTF-8").file();
    }
}

Java SE only

When using java you can create svg files via .svg() terminal operator:

File file = QRCode.from("www.example.org").svg();
File file = QRCode.from("www.example.com").withSize(250, 250).withColor(30, 90).svg();

It's also possible to write svg to an OutputStream with terminal operation:

OutputStream outs = // ...
QRCode.from("www.example.org").svg(outs);

Android only

On Android you have a special method bitmap() which returns a android.graphics.Bitmap without creating a File object before, so you can use the generated android.graphics.Bitmap immediately inside an ImageView:

Bitmap myBitmap = QRCode.from("www.example.org").bitmap();
ImageView myImage = (ImageView) findViewById(R.id.imageView);
myImage.setImageBitmap(myBitmap);

License:

http://www.apache.org/licenses/LICENSE-2.0.html

空文件

简介

暂无描述 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/mirrors/qrgen.git
git@gitee.com:mirrors/qrgen.git
mirrors
qrgen
qrgen
master

搜索帮助