2017-02-10 3 views
3

내 안드로이드 앱 Journeyapp's ZXing Android Embedded library을 사용하고 있는데 내가ZXing Library를 사용하여 프로그래밍 방식으로 Android에서 맞춤 QR 코드를 생성하는 방법은 무엇입니까?

private void init() { 

     ImageView qrImageView = (ImageView) findViewById(R.id.qr_image_view); 

     qrImageView.setImageBitmap(generateQRBitMap("a")); 

    } 

    private Bitmap generateQRBitMap(final String content) { 

     Map<EncodeHintType, ErrorCorrectionLevel> hints = new HashMap<>(); 

     hints.put(EncodeHintType.ERROR_CORRECTION,ErrorCorrectionLevel.H); 

     QRCodeWriter qrCodeWriter = new QRCodeWriter(); 

     try { 
      BitMatrix bitMatrix = qrCodeWriter.encode(content, BarcodeFormat.QR_CODE, 512, 512, hints); 

      int width = bitMatrix.getWidth(); 
      int height = bitMatrix.getHeight(); 

      Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); 

      for (int x = 0; x < width; x++) { 
       for (int y = 0; y < height; y++) { 

        bmp.setPixel(x , y, bitMatrix.get(x,y) ? Color.BLACK : Color.WHITE); 
       } 
      } 

      return bmp; 
     } catch (WriterException e) { 
      e.printStackTrace(); 
     } 

     return null; 
    } 

그러나 다음 코드 조각을 사용하여 간단한 QR 코드를 생성 할 수 있습니다, 나는 하나 enter image description here 아래에 주어진 같은 멋진 무언가를 생성 할 수 있도록하려면

이제는 사용자 지정 인코더를 써야 할 수도 있지만 실제로 어디에서 시작해야할지 모르겠다. BitMatrix 클래스는 항상 정사각형 QR 코드를 생성하지만 이상한 모양을 만드는 데 사용할 수있는 것은 무엇입니까?

+0

다음을 따르십시오. https://www.simplifiedcoding.net/android-qr-code-scanner-tutorial/ –

+1

도움이되지 않았습니다! 이것은 ZXing의 QR 라이브러리 구현을 보여주는데, 사용자 정의를 가르치는 튜토리얼을 찾고있다 – Auro

+0

https://skrymerdev.wordpress.com/2012/09/22/qr-code-generation-with-zxing/ – jaspreet

답변

0

두 개의 QR 코드를 만들어보십시오. 하나는 무작위로, A라고 부르면됩니다. 하나는 데이터를 포함하고 B는 A를 확대하고 왜곡됩니다 (흐림 효과가 있습니다). 이미지 모양에 대해 투명한 흰색 벡터를 만들고 가장자리를 흰색으로 둥글게 만듭니다. 이 이미지를 QRCode A에 오버레이 한 다음 맨 위에 B 오버레이합니다.

은이 일부 코드, P

P.S.을 해결 희망 그렇게한다면, 그것을 도서관으로 만드십시오!