@Override public void run() { try { qRCodeBitmap = EncodingHandler.createQRCode(Constant.APP_DOWNLOAD_WEBSITE , (int) (2 * getResources().getDimension(R.dimen.qrcode_size))); } catch (WriterException e) { e.printStackTrace(); Log.e(TAG, "initData try {Bitmap qrcode = EncodingHandler.createQRCode(contactJson, ivContactQRCodeCode.getWidth());" + " >> } catch (WriterException e) {" + e.getMessage()); } runUiThread(new Runnable() { @Override public void run() { ivAboutQRCode.setImageBitmap(qRCodeBitmap); } }); } });
@Override public void run() { try { qRCodeBitmap = EncodingHandler.createQRCode(Constant.APP_DOWNLOAD_WEBSITE , (int) (2 * getResources().getDimension(R.dimen.qrcode_size))); } catch (WriterException e) { e.printStackTrace(); Log.e(TAG, "initData try {Bitmap qrcode = EncodingHandler.createQRCode(contactJson, ivContactQRCodeCode.getWidth());" + " >> } catch (WriterException e) {" + e.getMessage()); } runUiThread(new Runnable() { @Override public void run() { ivAboutQRCode.setImageBitmap(qRCodeBitmap); } }); } });
return bitmap; } catch (WriterException e) { e.printStackTrace();
protected void setQRCode(User user) { if (user == null) { Log.e(TAG, "setQRCode user == null" + " || StringUtil.isNotEmpty(user.getPhone(), true) == false >> return;"); return; } try { qRCodeBitmap = EncodingHandler.createQRCode(JSON.toJSONString(user) , (int) (2 * getResources().getDimension(R.dimen.qrcode_size))); } catch (WriterException e) { e.printStackTrace(); Log.e(TAG, "initData try {Bitmap qrcode = EncodingHandler.createQRCode(contactJson, ivQRCodeCode.getWidth());" + " >> } catch (WriterException e) {" + e.getMessage()); } runUiThread(new Runnable() { @Override public void run() { ivQRCodeProgress.setVisibility(View.GONE); ivQRCodeCode.setImageBitmap(qRCodeBitmap); } }); }
protected void setQRCode(User user) { // if (user == null) { // Log.e(TAG, "setQRCode user == null" + // " || StringUtil.isNotEmpty(user.getPhone(), true) == false >> return;"); // return; // } try { //不能暴露用户隐私 qRCodeBitmap = EncodingHandler.createQRCode(HttpRequest.URL_GET + JSON.toJSONString(new JSONRequest(new apijson.demo.server.model.User(userId))) , (int) (2 * getResources().getDimension(R.dimen.qrcode_size))); } catch (WriterException e) { e.printStackTrace(); Log.e(TAG, "initData try {Bitmap qrcode = EncodingHandler.createQRCode(contactJson, ivQRCodeCode.getWidth());" + " >> } catch (WriterException e) {" + e.getMessage()); } runUiThread(new Runnable() { @Override public void run() { ivQRCodeProgress.setVisibility(View.GONE); ivQRCodeCode.setImageBitmap(qRCodeBitmap); } }); }
/** * 根据内容生成二维码数据 * * @param content 二维码文字内容[为了信息安全性,一般都要先进行数据加密] * @param width 二维码照片宽度 * @param height 二维码照片高度 * @return */ public static BitMatrix createQRCode(String content, int width, int height) { Hashtable<EncodeHintType, Object> hints = new Hashtable<EncodeHintType, Object>(); // 设置字符编码 hints.put(EncodeHintType.CHARACTER_SET, StrConst.DEFAULT_CHARSET_NAME); // 指定纠错等级 hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); BitMatrix matrix = null; try { matrix = new MultiFormatWriter().encode(content, QR_CODE, width, height, hints); } catch (WriterException e) { e.printStackTrace(); } return matrix; }
/** * {@linkplain Builder#build()} () QREncode.Builder().build()} * * @return */ public Bitmap encodeAsBitmap() { try { return mQRCodeEncoder.encodeAsBitmap(); } catch (WriterException e) { e.printStackTrace(); } return null; }
/** * @param codeEncoder {@linkplain Builder#buildDeprecated()} () QREncode.Builder() * .buildDeprecated()} * @return */ @Deprecated public static Bitmap encodeQR(QRCodeEncoder codeEncoder) { try { return codeEncoder.encodeAsBitmap(); } catch (WriterException e) { e.printStackTrace(); } return null; }
public Bitmap makeQRCodeImage(String content, int width, int height, Bitmap logo) { if (TextUtils.isEmpty(content)) { return null; } String contentEtString = content.trim(); if (contentEtString.length() == 0) { return null; } try { return CodeCreator.createQRCode(contentEtString, width, height, logo); } catch (WriterException e) { e.printStackTrace(); return null; } } }
/** * 生成带图片的二维码 * * @param content 二维码的内容 * @param width 宽度 * @param height 高度 * @param srcImagePath 被镶嵌的图片的地址 * @author fengshuonan * @since 2.3.0 */ public static void encode(String content, int width, int height, String srcImagePath, OutputStream outputStream) { try { ImageIO.write(genBarcode(content, width, height, srcImagePath), "jpg", outputStream); } catch (IOException e) { e.printStackTrace(); } catch (WriterException e) { e.printStackTrace(); } }
/** * 生成带图片的二维码 * * @param content 二维码的内容 * @param width 宽度 * @param height 高度 * @param srcImagePath 被镶嵌的图片的地址 * @param destImagePath 生成二维码图片的地址 * @author fengshuonan * @since 2.3.0 */ public static void encode(String content, int width, int height, String srcImagePath, String destImagePath) { try { ImageIO.write(genBarcode(content, width, height, srcImagePath), "jpg", new File(destImagePath)); } catch (IOException e) { e.printStackTrace(); } catch (WriterException e) { e.printStackTrace(); } }
@Override public void onClick(View v) { switch (v.getId()) { case R.id.btn1: // startActivity(new Intent(MainActivity.this, CaptureActivity.class)); Intent intent = new Intent(mContext, CaptureActivity.class); startActivityForResult(intent, REQ_CODE); break; case R.id.btn2: mImage.setVisibility(View.VISIBLE); //隐藏扫码结果view mImageCallback.setVisibility(View.GONE); mTvResult.setVisibility(View.GONE); String content = mEt.getText().toString().trim(); Bitmap bitmap = null; try { bitmap = BitmapUtils.create2DCode(content);//根据内容生成二维码 mTvResult.setVisibility(View.GONE); mImage.setImageBitmap(bitmap); } catch (WriterException e) { e.printStackTrace(); } break; } }
/** * 根据内容生成二维码数据 * @param content 二维码文字内容[为了信息安全性,一般都要先进行数据加密] * @param width 二维码照片宽度 * @param height 二维码照片高度 * @return */ public static BitMatrix createQRCode(String content, int width, int height){ Hashtable<EncodeHintType, Object> hints = new Hashtable<EncodeHintType, Object>(); //设置字符编码 hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); // 指定纠错等级 hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); hints.put(EncodeHintType.MARGIN, 1); BitMatrix matrix = null; try { matrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); } catch (WriterException e) { e.printStackTrace(); } return matrix; }
/** * 根据内容生成二维码数据 * * @param content 二维码文字内容[为了信息安全性,一般都要先进行数据加密] * @param width 二维码照片宽度 * @param height 二维码照片高度 * @return */ public static BitMatrix createQRCode(String content, int width, int height) { Hashtable<EncodeHintType, Object> hints = new Hashtable<EncodeHintType, Object>(); // 设置字符编码 hints.put(EncodeHintType.CHARACTER_SET, StrConstant.DEFAULT_CHARSET_NAME); // 指定纠错等级 hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); BitMatrix matrix = null; try { matrix = new MultiFormatWriter().encode(content, QR_CODE, width, height, hints); } catch (WriterException e) { e.printStackTrace(); } return matrix; }
@Override public void CreateQrCode() { JSONObject userJson = HTApp.getInstance().getUserJson(); String key = "userInfo:"; JSONObject object =new JSONObject(); object.put(HTConstant.JSON_KEY_HXID,HTApp.getInstance().getUsername()); object.put(HTConstant.JSON_KEY_NICK,userJson.getString(HTConstant.JSON_KEY_NICK)); object.put(HTConstant.JSON_KEY_TEL,userJson.getString(HTConstant.JSON_KEY_TEL)); object.put(HTConstant.JSON_KEY_FXID,userJson.getString(HTConstant.JSON_KEY_FXID)); object.put(HTConstant.JSON_KEY_SEX,userJson.getString(HTConstant.JSON_KEY_SEX)); object.put(HTConstant.JSON_KEY_AVATAR,userJson.getString(HTConstant.JSON_KEY_AVATAR)); object.put(HTConstant.JSON_KEY_PROVINCE,userJson.getString(HTConstant.JSON_KEY_PROVINCE)); object.put(HTConstant.JSON_KEY_CITY,userJson.getString(HTConstant.JSON_KEY_CITY)); object.put(HTConstant.JSON_KEY_SIGN,userJson.getString(HTConstant.JSON_KEY_SIGN)); try { Bitmap bitmap = generateQRCode(key + object.toJSONString()); codeView.showQrCode(bitmap); } catch (WriterException e) { codeView.showError(e.getMessage()); e.printStackTrace(); } }
@Override public void CreateQrCode() { JSONObject userJson = HTApp.getInstance().getUserJson(); JSONObject allobj = new JSONObject(); allobj.put("codeType",2); JSONObject object =new JSONObject(); object.put(HTConstant.JSON_KEY_HXID,HTApp.getInstance().getUsername()); object.put(HTConstant.JSON_KEY_NICK,userJson.getString(HTConstant.JSON_KEY_NICK)); object.put(HTConstant.JSON_KEY_TEL,userJson.getString(HTConstant.JSON_KEY_TEL)); object.put(HTConstant.JSON_KEY_FXID,userJson.getString(HTConstant.JSON_KEY_FXID)); object.put(HTConstant.JSON_KEY_SEX,userJson.getString(HTConstant.JSON_KEY_SEX)); object.put(HTConstant.JSON_KEY_AVATAR,userJson.getString(HTConstant.JSON_KEY_AVATAR)); object.put(HTConstant.JSON_KEY_PROVINCE,userJson.getString(HTConstant.JSON_KEY_PROVINCE)); object.put(HTConstant.JSON_KEY_CITY,userJson.getString(HTConstant.JSON_KEY_CITY)); object.put(HTConstant.JSON_KEY_SIGN,userJson.getString(HTConstant.JSON_KEY_SIGN)); allobj.put("data",object.toJSONString()); try { Bitmap bitmap = generateQRCode(allobj.toJSONString()); codeView.showQrCode(bitmap); } catch (WriterException e) { codeView.showError(e.getMessage()); e.printStackTrace(); } }
public void showQrImage(String uuid) { String uid = null != uuid ? uuid : this.uuid; String url = "https://login.weixin.qq.com/qrcode/" + uid + "?t=webwx"; final File output = new File("temp.jpg"); //下载二维码 File qrImage = HttpClientUtil.doGetImage(url); //控制台显示二维码 Map<EncodeHintType, Object> hintMap = new EnumMap<EncodeHintType, Object>(EncodeHintType.class); hintMap.put(EncodeHintType.CHARACTER_SET, "UTF-8"); hintMap.put(EncodeHintType.MARGIN, 1); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); String qrContent = readQRCode(qrImage, hintMap); QRCodeWriter qrCodeWriter = new QRCodeWriter(); BitMatrix bitMatrix; try { bitMatrix = qrCodeWriter.encode(qrContent, BarcodeFormat.QR_CODE, 10, 10, hintMap); System.out.println(toAscii(bitMatrix)); } catch (WriterException e) { e.printStackTrace(); } }
@Override protected Bitmap doInBackground(Void... params) { Bitmap bitmap = null; int qrCodeDimension = 260; QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(uri, null, Contents.Type.TEXT, BarcodeFormat.QR_CODE.toString(), qrCodeDimension); try { bitmap = qrCodeEncoder.encodeAsBitmap(); } catch (WriterException e) { e.printStackTrace(); } return bitmap; }
private void generateQR() throws Exception { json = generateJson(); Log.d(QRPresenterActivity.class.getSimpleName(), json); MultiFormatWriter multiFormatWriter = new MultiFormatWriter(); try { BitMatrix bitMatrix = multiFormatWriter.encode(json, BarcodeFormat.QR_CODE,1080,1080); BarcodeEncoder barcodeEncoder = new BarcodeEncoder(); Bitmap bitmap = barcodeEncoder.createBitmap(bitMatrix); ((ImageView) findViewById(R.id.QRView)).setImageBitmap(bitmap); } catch (WriterException e) { e.printStackTrace(); } }
private Bitmap generateQRCode(String qrCodeString){ Bitmap bmp = null; //二维码图片 QRCodeWriter writer = new QRCodeWriter(); try { BitMatrix bitMatrix = writer.encode(qrCodeString, BarcodeFormat.QR_CODE, 512, 512); //参数分别表示为: 条码文本内容,条码格式,宽,高 int width = bitMatrix.getWidth(); int height = bitMatrix.getHeight(); 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); } } } catch (WriterException e) { e.printStackTrace(); } return bmp; }