我需要一個庫來生成 iPhone和Android上的二維條碼(最好是WM7,也可能是j2me) - 這個想法是通過相應的掃描儀(解碼器)將信息傳輸到其他設備。有什麼好的選擇?在iPhone和Android上生成二維條碼(例如QR碼,Data Matrix,PDF417)
ZXing是一個選項,尤其是讀取/解碼方面,但我想在這些設備上生成。
我需要一個庫來生成 iPhone和Android上的二維條碼(最好是WM7,也可能是j2me) - 這個想法是通過相應的掃描儀(解碼器)將信息傳輸到其他設備。有什麼好的選擇?在iPhone和Android上生成二維條碼(例如QR碼,Data Matrix,PDF417)
ZXing是一個選項,尤其是讀取/解碼方面,但我想在這些設備上生成。
zxing將適用於Android。 Java編碼器尚未被移植到C++(隨意加入並貢獻......應該不那麼難)。在此之前,我一直使用psytec編碼器(http://groups.google.com/group/zxing/msg/27e421daeb510d0f)。評論是日文的,但是非常簡單。
我沒有什麼要添加WM7。那是C#嗎?有一個zxing的C#端口,但我不知道有人主動維護它,不知道它是否包含編碼器。
最好的選擇應該是ZXing's庫。我不確定Windows Phone 7的支持。
如果您要在線轉移到其他設備,那麼您可能需要使用第三方QR碼API來獲取圖像。撥打REST API是跨平臺移動應用的最佳選擇。
這個API會爲URI的:http://www.tag.cx/qr-codes/
您也可能擁有自己的私人QR代碼生成器API。
這裏是另外一個Java版本: http://qrcode.sourceforge.jp/
總結 - 「這個項目的發展,並在GPL v2的分配QR碼解碼/編碼庫項目的目標是利用可編程器件遍佈QR碼嵌入信息。 QR Code是工業標準,JIS-X-0510和ISO/IEC18004。「
還檢查了(我不能發佈這些,因爲計算器防止多個URL): 和NET版本(網站上面所列數字): http://www.codeproject.com/KB/cs/qrcode.aspx
還檢查了(我不能「T發佈這些因爲計算器防止多於一個的URL): 一個Python版本(該網站上所列出上文): http://pyqrcode.sourceforge.net/
我已經使用斑馬線成功地進行編碼的QR條形碼。但是,至少在目前的版本中,它似乎對編碼其他符號的支持有限(例如:PDF-417)。
我使用下面的代碼片斷:
// Encode the bitmap and display it on the screen
try {
// This will produce a 150x150 QR Barcode and display it on the screen.
Bitmap bm = encodeAsBitmap(barcodeContentString, BarcodeFormat.QR_CODE, 150, 150);
if(bm != null) {
barcodeImage.setImageBitmap(bm);
}
}
catch (WriterException e) { ... }
在此示例中,「barcodeContentString」是正被編碼的數據。 「barcodeImage」是一個標準的ImageView。
我沒有在這裏顯示,但是我打開了整個屏幕,顯示條形碼的時間。因此,我能夠使用兼容QR的條形碼掃描儀成功掃描條形碼。
我可能已經太遲,無法以任何方式爲您提供幫助,但我發現了Data Matrix代碼的良好SDK。更多的說明在他們的網站HERE,但要在這裏提供的代碼,你會做這樣的事情:
OBLinear *pLinear = [OBLinear new];
[pLinear setNBarcodeType: OB_CODE128A];
[pLinear setPDataMsg: [[NSString alloc] initWithString:@"AB"]];
//[pLinear setPSupData: [[NSString alloc] initWithString:@"14562"]];
[pLinear setFX: USER_DEF_BAR_WIDTH];
[pLinear setFY: USER_DEF_BAR_HEIGHT];
[pLinear setFLeftMargin:USER_DEF_LEFT_MARGIN];
[pLinear setFRightMargin:USER_DEF_RIGHT_MARGIN];
[pLinear setFTopMargin:USER_DEF_TOP_MARGIN];
[pLinear setFBottomMargin:USER_DEF_BOTTOM_MARGIN];
[pLinear setNRotate:OB_Rotate0];
UIFont *pTextFont = [UIFont fontWithName: @"Arial" size: 8.0f];
[pLinear setPTextFont: pTextFont];
[pLinear drawWithView:self.view];
是的,謝謝!雖然我想我應該說「ZXing之外」,因爲我知道這一點。它主要用於閱讀這些代碼,不是嗎? – stolsvik 2010-12-01 12:21:15