本教程展示如何编写条形码使用LEADTOOLS Android SDK在Java应用程序中。
概述 | |
---|---|
总结 | 本教程介绍了如何编写条形码在一个Java Android应用程序。 |
完成时间 | 30分钟 |
Visual Studio项目 | 下载教程项目(15 MB) |
平台 | Java (Android) |
IDE | Android工作室 |
运行许可证 | 下载LEADTOOLS |
试试用另一种语言 |
|
熟悉基本的步骤创建一个项目的审查添加引用和设置一个许可证和显示图像的图像查看器教程,在工作之前写1 d和2 d条形码图像——Java Android教程。
从项目中创建的副本添加引用和设置一个许可证教程。如果你没有这个项目,按照这个教程中的步骤创建它。
的引用需要取决于项目的目的。本教程需要以下. jar
和所以
文件:
的. jar
文件可以发现:< INSTALL_DIR > \ Bin \ Java
leadtools.barcode.jar
的所以
文件可以发现:< INSTALL_DIR > \ Bin \ Android
libleadtools.barcode.so
libleadtools.barcode.lead2dwrite.so
libleadtools.barcode.oned.so
libleadtools.barcode.pdfwrite.so
libleadtools.barcode.qrwrite.so
libleadtools.barcode.datamatrixwrite.so
libleadtools.imageprocessing.core.so
libleadtools.imageprocessing.utilities.so
libleadtools.drawing.so
对于一个完整的列表的应用程序所需的DLL文件,请参考文件包含在您的应用程序。
许可解锁项目需要的特性。它必须设置工具箱函数被调用之前。详情,包括教程为不同的平台,请参考设置一个运行时许可。
有两种类型的运行时许可证:
请注意
添加LEADTOOLS本地引用和设置许可中会详细介绍添加引用和设置一个许可证教程。
在Project Explorer窗口,打开activity_main.xml
文件中发现的应用程序/ src / main / res /布局
目录中。RasterImageViewer以下XML代码添加一个新的写条形码按钮。
< LinearLayout xmlns: android =“http://schemas.android.com/apk/res/android”
android: layout_width =“match_parent”
android: layout_height =“match_parent”
面向android: =“垂直”
android: weightSum =“1.0”
android:背景=“@android:颜色/ darker_gray”>
<按钮
android: layout_width =“wrap_content”
android: layout_height =“wrap_content”
android:文本=“从画廊选择图片”
android: onClick =“onSelectImage”/ >
< leadtools.controls.RasterImageViewer
android: id =“@ + id / rasterimageviewer”
android: layout_width =“match_parent”
android: layout_height =“0 dp”
android: layout_weight =“.96点”
android:背景=“@android:颜色/白”/ >
<按钮
android: id =“@ + id /按钮”
android: layout_width =“wrap_content”
android: layout_height =“wrap_content”
android:文本=“写条形码”
android: onClick =“writeBarcodes”/ >
LinearLayout < / >
在MainActivity.java
前,添加以下导入语句MainActivity
类:
进口leadtools.barcode.BarcodeAlignment;
进口leadtools.barcode.BarcodeData;
进口leadtools.barcode.BarcodeEngine;
进口leadtools.barcode.BarcodeOutputTextPosition;
进口leadtools.barcode.BarcodeSymbology;
进口leadtools.barcode.OneDBarcodeWriteOptions;
进口leadtools.barcode.QRBarcodeData;
进口leadtools.barcode.QRBarcodeECCLevel;
进口leadtools.barcode.QRBarcodeSymbolModel;
进口leadtools.barcode.QRBarcodeWriteOptions;
添加以下的成员变量MainActivity
类:
私人BarcodeEngine引擎;
私人BarcodeData数据;
私人QRBarcodeData qrData;
私人QRBarcodeWriteOptions qrOptions;
更新onCreate ()
函数如下所示:
受保护的无效onCreate(包savedInstanceState) {
超级.onCreate (savedInstanceState);
setContentView (R.layout.activity_main);
/ /加载LEADTOOLS本地库
试一试{
Platform.setLibPath (sharedLibsPath);
Platform.loadLibrary (LTLibrary.LEADTOOLS);
Platform.loadLibrary (LTLibrary.CODECS);
Platform.loadLibrary (LTLibrary.BARCODE);
}
抓(异常交货){
Log.d(标签,“失败加载LEADTOOLS本地库”);
}
引擎=新BarcodeEngine ();
data =新BarcodeData ();
qrData =新QRBarcodeData ();
qrOptions =新QRBarcodeWriteOptions ();
}
创建一个writeBarcodes ()
函数编写一个UPCA条形码和QR条形码给定的图像。
公共无效writeBarcodes(查看v)
{
RasterImage图像= mViewer.getImage ();
如果(图片! =零)
{
如果(数% 2 = = 0){
/ /写1 d条形码
data.setSymbology (BarcodeSymbology.UPC_A);
data.setValue (“01234567890”);
data.setBounds (新LeadRect (10, 600, 200));
OneDBarcodeWriteOptions选项=新OneDBarcodeWriteOptions ();
options.setEnableErrorCheck (真正的);
options.setTextPosition (BarcodeOutputTextPosition.DEFAULT);
试一试
{
engine.getWriter ()。writeBarcode(图像、数据选项);
}
抓(异常交货){
Toast.makeText (这Toast.LENGTH_LONG ex.getMessage()),告诉();
}
}
其他的
{
/ /写2 d条形码
qrData.setSymbolModel (QRBarcodeSymbolModel.MODEL1_AUTOSIZE);
qrData.setSymbology (BarcodeSymbology.QR);
qrData.setValue (“QR数据”);
qrData.setBounds (新LeadRect (10300600200));
qrOptions.setGroupNumber (0);
qrOptions.setGroupTotal (0);
qrOptions.setXModule (30);
qrOptions.setECCLevel (QRBarcodeECCLevel.LEVEL_L);
qrOptions.setHorizontalAlignment (BarcodeAlignment.NEAR);
qrOptions.setVerticalAlignment (BarcodeAlignment.NEAR);
试一试
{
engine.getWriter ()。writeBarcode(图像、qrData qrOptions);
文件文件=新文件(这.getFilesDir (),“output.png”);
字符串路径= file.getAbsolutePath ();
编解码器。保存(形象,LeadStreamFactory.create(路径),RasterImageFormat。PNG, 0);
Toast.makeText (这、路径、Toast.LENGTH_LONG),告诉();
}
抓(异常交货)
{
Toast.makeText (这Toast.LENGTH_LONG ex.getMessage()),告诉();
}
}
数+ +;
}
}
新闻Shift + F10运行该应用程序。遵循以下步骤来测试应用程序。
从画廊选择图像
加载图像中写的条形码。选择编写条形码
按钮编写两个条形码图像并将其保存。
本教程展示如何编写1 d和2 d条形码图像。