gpt4 book ai didi

android - 在android中生成设计师二维码

转载 作者:太空狗 更新时间:2023-10-29 16:01:55 26 4
gpt4 key购买 nike

如何在 android 中为某些文本生成二维 QR 码并在中心显示图像?我浏览了很多,但我只发现如何使用 ZXing 库生成简单的二维二维码 link .是否可以使用 ZXing 库生成在中心具有图像的二维 QR 码?

最佳答案

要使图像居中对齐,请使用我的 activity_main.xml 中的代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<ImageView
android:id="@+id/myImage"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />

</RelativeLayout>

app screenshot

要生成和显示 QR 编码图像,请使用我的 MainActivity.java 中的代码:

public class MainActivity extends AppCompatActivity {

public final static int WHITE = 0xFFFFFFFF;
public final static int BLACK = 0xFF000000;
public final static int WIDTH = 400;
public final static int HEIGHT = 400;
public final static String STR = "A string to be encoded as QR code";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageView imageView = (ImageView) findViewById(R.id.myImage);
try {
Bitmap bitmap = encodeAsBitmap(STR);
imageView.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
}

Bitmap encodeAsBitmap(String str) throws WriterException {
BitMatrix result;
try {
result = new MultiFormatWriter().encode(str,
BarcodeFormat.QR_CODE, WIDTH, HEIGHT, null);
} catch (IllegalArgumentException iae) {
// Unsupported format
return null;
}

int w = result.getWidth();
int h = result.getHeight();
int[] pixels = new int[w * h];
for (int y = 0; y < h; y++) {
int offset = y * w;
for (int x = 0; x < w; x++) {
pixels[offset + x] = result.get(x, y) ? BLACK : WHITE;
}
}

Bitmap bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
bitmap.setPixels(pixels, 0, w, 0, 0, w, h);
return bitmap;
}
}

Android Studio 中,将以下行添加到 build.gradle 文件中:

dependencies {
....
compile 'com.google.zxing:core:3.2.1'
}

或者 - 如果仍然使用带有 ADT 插件的 Eclipse 通过 ZXing 添加 core.jarlibs 子目录(这里是 fullscreen):

Eclipse screenshot

关于android - 在android中生成设计师二维码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28827407/

26 4 0
文章推荐: c - Union 比 C 中的 Structure 更好的选择的场景
文章推荐: javascript - onclick 属性与 eventListeners
文章推荐: c - C中的计算器程序
文章推荐: javascript - 一个真正的循环
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com