¿Cómo genera el sistema Android códigos de barras y códigos QR?1. Descripción del problema Durante el desarrollo, la información debe convertirse en códigos QR para su almacenamiento y requiere un logotipo de la empresa. Sabemos que Zxing de Google es de código abierto. El proyecto es muy Nos ha ayudado a realizar la generación y análisis de códigos de barras y códigos QR, pero el sitio web oficial con el logotipo no proporciona una demostración. Echemos un vistazo a cómo se implementa y utiliza Zxing a través de ejemplos.
2. Descripción del caso 1. Resultados de la ejecución del caso 2. Trabajo de preparación del caso Agregue core/zxing/zxing/ al archivo jar del proyecto 3. Componentes principales de Zxing 1. BarcodeFormat define diferentes modos de codificación binaria y el valor es el siguiente código de barras EAN_13, ** * Contando códigos de 13 dígitos, que son relativamente comunes, como el código bidimensional CODE_QR (código matricial) en el empaque del producto, que tiene más información que el código de barras El actualmente popular código de barras CODE_128 puede representar desde ASCII 0 hasta ASCII 127 *. ** 128 caracteres, utilizado para la gestión empresarial y el control del proceso de producción Código de barras CODE_39, fácil de compilar, solo acepta los siguientes 43 caracteres 2. MultiFormatWriter contiene principalmente un método de codificación (), que puede generar códigos (códigos de barras, códigos QR) codificados en BitMatrix. (Contenido de cadena, formato BarcodeFormat, ancho int, alto int, sugerencias de Hashtable) parámetros del método: contenido: contenido a codificar formato: formato de codificación (código de barras, código QR) ancho, alto: tamaño del código generado sugerencias: contiene EncodeHintType (codificación tipo de sugerencia) información Una colección que establece principalmente la codificación de caracteres, como admitir caracteres chinos utf-8, como se muestra a continuación: Hashtable hst = new Hashtable(); hst.put(EncodeHintType.CHARACTER_SET,?UTF-8?); valor: BitMatrix matriz bidimensional punto 3. BitMatrixBitMatrix: aparece como una matriz bidimensional): devuelve la altura de la matriz booleana get (x, y): un método muy importante para juzgar la posición de x e y dados. Este método juzga si hay un bloque negro en la aplicación de generación de código QR, y luego este método juzga el código QR con bloques negros, y luego registra los puntos con bloques negros y setPixels(). el método de mapa de bits se utiliza para generar los gráficos. El código detallado se encuentra en el código del método createCode(). 4. Código completo clase pública MainActivity extiende la actividad {privado EditText etCompany; privado EditText etPhone; logotipo de mapa de bits privado; privado estático final int IMAGE_ HALFWIDTH = 40; // El valor del ancho afectará el tamaño de la imagen intermedia @Overrideprotected void onCreate( Bundle saveInstanceState) {super.onCreate(savedInstanceState); layout.activity_main); //obtener la imagen del recurso, se puede cambiar para obtener una imagen local o tomar una fotografía para obtener el logotipo de la imagen=