2011-04-22 23 views
27

Quiero tomar una cadena numérica y generar un código de barras simple que pueda leer cualquier escáner.Generación de código de barras desde iOS App

Ya puedo usar la cámara y leer un código de barras, pero ahora me gustaría generar un código de barras.

¿Alguien sabe de un sdk que me permita hacer esto, recursos o snipets de código?

Gracias

+0

cheque esta respuesta acerca EAN13 http://stackoverflow.com/a/36875393/3472073 –

Respuesta

29

La única biblioteca libre de hacerlo es , que es un tenedor de cocoabarcodes. Si está considerando bibliotecas comerciales, hay una llamada iPhone Barcode Generator.

actualización Comprobar este puerto Objective-C de ZXing: https://github.com/TheLevelUp/ZXingObjC

+0

bien, me dieron el Cocoa-Touch-Barcodes, ¿alguien tiene algún código de muestra de cómo hacer que esto funcione? Solo quiero que se genere un código de barras estándar cuando lo transmita una cadena alfanumérica. Luego mostraré esto al usuario. – Raymond

+1

ZXing funciona muy bien, pero sufre mucha hinchazón si todo lo que le interesa es codificar un tipo de código de barras (como el tipo 39). –

+0

encontré que este proyecto ha sido abandonado en un estado que lo hace inadecuado para su uso en aplicaciones de iOS reales. Por eso comencé mi propia biblioteca para generar códigos de barras. El código 39 fue muy simple de implementar, ya que no tiene ningún tipo de código de suposición elegante. – Cocoanetics

15

incluyen: #import "NKDBarcodeFramework.h" en su archivo de cabecera y poner estas líneas de abajo en su función init.

barcode = [NKDExtendedCode39Barcode alloc]; 
barcode = [barcode initWithContent:@"1234567890123" printsCaption:0]; 

[barcode calculateWidth]; 
NSLog(@"%@",[barcode description]); 

theImage = [UIImage imageFromBarcode:barcode]; 
subview = [[UIImageView alloc]initWithFrame:TTScreenBounds()]; 
[subview setImage:theImage]; 
[self addSubview:subview]; 

self.frame = self.bounds; 

divertirse :-)

+0

Conoces cualquier SDK para generar códigos de barras 2D en dispositivos ios5 – iDroid

+0

Este código genera errores sobre los identificadores no declarados. – Danny

+0

cómo podemos obtener estas clases, proporcione el marco completo – ravinder521986

6

Hay tantos tipos de códigos de barras

  • One D
  • Dos D
  • Tres D

Cada tipo de código de barras tiene tantos subtipos y cada uno tiene su propio propósito.

explico cómo generar uno de los código de tipo de código de barras One D 39

aquí explico cómo generar ese código de barras usando la fuente personalizada

pasos:

1) Descargar la costumbre la fuente de here

2) Coloque la FRE3OF9X.ttf archivo del zip descargado

3) añadir las claves Fuentes proporcionadas por la aplicación en info.plist y en unidad 0 dan FRE3OF9X.ttf como valor

4) Prueba el fragmento de código a continuación

UIFont *fntCode39=[UIFont fontWithName:@"Free3of9Extended" size:30.0]; 

UILabel *lblBarCodeTest=[[UILabel alloc]initWithFrame:CGRectMake(0,100,768,30)]; 

[lblBarCodeTest setBackgroundColor:[UIColor lightGrayColor]]; 

[lblBarCodeTest setTextAlignment:NSTextAlignmentCenter]; 

[lblBarCodeTest setFont:fntCode39]; 

[lblBarCodeTest setText:@"*BarCode3Of9_AKA_Code39-ItsA1DBarcode*"]; 

[self.view addSubview:lblBarCodeTest]; 

resultado:

Barcode

0

He creado una clase simple para generar Code 39 Barcode, solo una .h y una .m necesarias para agregar a su proyecto, y con una línea de código genera el UIImage con código 39 de datos codificados para usted, de esta manera:

UIImage *code39Image = [Code39 code39ImageFromString:@"HELLO CODE39" Width:barcode_width Height:barcode_height]; 

Aquí está el enlace al proyecto en gitHub: [https://github.com/bclin087/Simple-Code39-generator-for-iOS.git]