二維條碼 QR code 最簡單範例
Jing (mqJing@gmail.com)
http://code.google.com/p/zxing/
預計時間: 25 分鐘
Project: download
ZXing ("Zebra Crossing"), Opensource 2d barcode library. 這份文件, 基本上就是跟著 http://code.google.com/p/zxing/wiki/GettingStarted 走一遍. 幾乎沒遇到甚麼困難. 你可以在幾分鐘內, 寫出一個在 Windows 產生 QR code 程式, 在 Android 寫出一個 QR code 讀取程式.
本文主要分成兩大部分, 安裝 library 然後就是寫程式. 非常的簡單. 值得一提的是 ZXing 是一個跨平台的 library, 所以想寫 Android, iPhone, Windows 程式的人, 想使用 2D barcode 功能, 使用 ZXing 就可以了.
Outline:
- 安裝與測試
- ZXing library (Ubuntu + Windows) setup + Android Testing Program
- 寫一個 C# 範例, 產生 QR Code
Ubuntu Version
Quick Guide
Step 1: install ant
Step 2: Quick build for Android
(a) 建立核心: cd core; ant export
(b) 設定 Android properties:
cd Android; echo "sdk.dir=/home/jing/NVPACK/android-sdk-linux_x86" > local.properties
(c) Build Android client ap: ant debug
(d) plug your android device and ant debug install
Detail Information
Step 1: install ant
Step 2: Quick build for Android
- 建立核心
指令:
cd core; ant export - 設定 Android properties
指令:
echo “sdk.dir=<android_sdk_path>” > local.properties
ex:
cd ../android; echo "sdk.dir=/home/jing/NVPACK/android-sdk-linux_x86" > local.properties
- 開始 Build Android client ap
指令:
ant debug - 把建立好的 BarcodeScanner-debug.apk 安裝到你的 Android 機器上
step 1: 把你的 Android device 連上電腦
step 2: ant debug install
測試
QRCode scanner demo
For J2SE
Quick build for j2se
- cd core;ant
- cd javase;ant
Windows Version
Step 1: Install ant (安裝手冊)
Step 2: 建立核心
指令:
cd core; ant export
Step 3: 建立 Android Client Scanner 範例程式: CaptureActivity-debug.apk
(a) 設定 Android properties
指令:
android update project -t 2 -p .
check 一下產生出來 local.properties 的內容. 沒錯: sdk.dir 位置設定正確!
(b) Build Android client ap
指令:
ant debug
Step 4: 安裝到你的 device
指令:
ant debug install
寫一個 C# 範例, 產生 QR Code
Project: download
Step 1: 加入 zxing.dll (ZXing-2.0\csharp\zxing.dll)
操作 Visual Studio 2010:
[Add Reference …] -> [Browse]
Step 2: 產生QRCode 關鍵片段
下載完整專案 (download)
| // import 的部分 using com.google.zxing; // for BarcodeFormat using com.google.zxing.qrcode; // for QRCode Engine using com.google.zxing.common; // for ByteMatrix using System.Drawing.Imaging; // for ImageFormat
// 關鍵程式碼 QRCodeWriter writer = new QRCodeWriter(); |
Enjoy!
by Jing.
Reference