Android

바코드 만들기

Machine_웅 2020. 9. 8. 09:51
728x90
반응형
  public void generateBarCode(String data){
        //바코드의 크기 화면 크기 비율로 설정
        int width = 0;
        int height = 0;

        Point point = new Point();
        getWindowManager().getDefaultDisplay().getRealSize(point);
        width = point.x / 3;
        height = width / 3;

        com.google.zxing.Writer c9 = new Code128Writer();

        try {
            BitMatrix bm = c9.encode(data, BarcodeFormat.CODE_128,width, height);
            mBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

            for (int i = 0; i < width; i++) {
                for (int j = 0; j < height; j++) {

                    mBitmap.setPixel(i, j, bm.get(i, j) ? Color.BLACK : Color.WHITE);
                }
            }
        } catch (WriterException e) {
            e.printStackTrace();
        }
        if (mBitmap != null) {
            image_qrcode.setImageBitmap(mBitmap);
        }
    }
728x90
반응형