Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Java Development

Reply
Contributor
abang_adit
Posts: 27
Registered: ‎07-26-2012
My Device: i dont have a blackberry device

Barcode 1D EAN 13 Writer Blackberry Java OS 7

Hello, Everybody

I have a problem during Generate EAN 13 Barcode on Blackberry OS 7.

I already create a code that generate EAN 13 i tested it on simulator os 6 9800 its working fine

but when i try on simulator dakota 9900 os 7 the barcode goes all black

this is my code

 

public void ean13writer(String ang){
try {
EAN13Writer ean13 = new EAN13Writer();
ByteMatrix barcode = ean13.encode( ang , BarcodeFormat.EAN_13 , width , height );
System.out.println("barcode : "+barcode);

jajal= ByteMatrix2Bitmap(barcode);
VerticalFieldManager cardcodemanager = new VerticalFieldManager(){

};
Bitmap borderBitmap = Bitmap.getBitmapResource("rounded-border.png");
BitmapField cardcode = new BitmapField(jajal);
cardcodemanager.add(cardcode);
cardcodemanager.setMargin(2, 40, 2, 40);
cardcodemanager.setPadding(2, 10, 2, 10);
cardcodemanager.setBorder(
BorderFactory.createBitmapBorder(
new XYEdges(12,12,12,12), borderBitmap
)
);

cardScreen.add(cardcodemanager);
}catch (Exception e) {
//add( new RichTextField( "gagal coy : " + e ) );
String a = String.valueOf(e).toString();
Dialog.alert(a);
}
}


private static Bitmap ByteMatrix2Bitmap(ByteMatrix matrix){
int width = matrix.getWidth(); 
int height = matrix.getHeight();
//matrix is a 0-1 matrix
byte[][] array = matrix.getArray(); 
int[] imgdata = new int[width*height];
Bitmap bitmap = new Bitmap(width, height); 

//System.out.println("hasil array byte [] [] ="+matrix.getArray());

for (int y = 0; y < height; y++) { 
for (int x = 0; x< width; x++){
if (array[y][x] == 0){
imgdata[y * width + x] = Bitmap.TRUE_WHITE;
//System.out.println("KALO 0 = "+imgdata[y * width + x]);
}else{
imgdata[y * width + x] = Bitmap.TRUE_BLACK;
//System.out.println("KALO BUKAN = "+imgdata[y * width + x]);
}
}
}
bitmap.setARGB(imgdata, 0, width, 0, 0, width, height);
Bitmap retmap = new Bitmap(2*width ,10*height );
bitmap.scaleInto(retmap, Bitmap.FILTER_BILINEAR, Bitmap.SCALE_TO_FIT); 


return retmap; 
}

 

 

 

can somebody help me to solve this problem ?

best regards,

aditya eka putra

best regards,
aditya eka putra (@abang_adit)
Please use plain text.