【问题标题】:How to store the Generated QR-Code as an image in SDCard (ZXing library)如何将生成的二维码作为图像存储在 SDCard(ZXing 库)中
【发布时间】:2013-04-23 23:02:42
【问题描述】:

我正在制作一个基于二维码的应用程序。我必须生成特定字符串的二维码,并且我必须将生成的二维码保存在 SD 卡中。是否可以使用Zxing 库。

所以我可以使用以下代码生成二维码。

注意:我正在通过 Intent 调用二维码扫描仪。 我现在使用EditText 字段插入输入。见下面的代码

public class MainActivity extends Activity {

EditText edQR_Field;
Button btnGenerate_QR_Code;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    btnGenerate_QR_Code = (Button) findViewById(R.id.button1);
    edQR_Field = (EditText) findViewById(R.id.editText1);

    btnGenerate_QR_Code.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            String input = edQR_Field.getText().toString();

            Intent intent = new Intent(
                    "com.google.zxing.client.android.ENCODE");

            intent.putExtra("ENCODE_TYPE", "TEXT_TYPE");
            intent.putExtra("ENCODE_DATA", input);
            intent.putExtra("ENCODE_FORMAT", "QR_CODE");
            intent.putExtra("ENCODE_SHOW_CONTENTS", false);
            startActivityForResult(intent, 0);

            Toast.makeText(MainActivity.this, input, Toast.LENGTH_SHORT)
                    .show();

        }
    });

}

 }

我得到了这个。

问题

我只想将此生成的二维码保存在我的安卓设备的 SD 卡中。

问候 卡迪尔·侯赛因

【问题讨论】:

标签: android android-intent zxing


【解决方案1】:

完整答案:

Text 是一个很棒的 Java PDF 库。他们还有一个用于创建条形码的 API。您无需创建 PDF 即可使用它。

此页面包含有关创建条形码的详细信息。以下是该网站的示例:

BarcodeEAN codeEAN = new BarcodeEAN();
codeEAN.setCodeType(codeEAN.EAN13);
codeEAN.setCode("9780201615883");
Image imageEAN = codeEAN.createImageWithBarcode(cb, null, null);

您需要确定的最重要的事情是您需要哪种类型的条形码。有许多不同的条形码格式,iText 确实支持其中很多。在确定此 API 是否适合您之前,您需要知道您需要什么格式。

【讨论】:

    【解决方案2】:

    嗯! 好的,然后看到这个链接。 在此链接中使用了 ZXing 库! 而且描述的很简单! http://www.mysamplecode.com/2012/09/android-generate-qr-code-using-zxing.html

    告诉我有用吗?

    【讨论】:

    • 这很好,但它显示了项目中旧代码的副本。最好是使用最新版本的类,例如QRCodeEncoder
    【解决方案3】:

    如果您通过 Intent 进行集成,则无法保存图像或取回图像。但是,用户可以通过按菜单和共享来保存图像。

    相反,您只需从项目中嵌入核心库并调用它来对图像进行编码。然后你可以显示或保存或做你喜欢的。

    您可以在此处查看它是如何在应用中完成的,并重用此代码的部分内容: https://code.google.com/p/zxing/source/browse/trunk/android/src/com/google/zxing/client/android/encode/EncodeActivity.java

    【讨论】:

    • 感谢您的宝贵回复。我在这里需要的只是将 core.jar 复制到我的 libs 文件夹中。并调用 QRCodeEncode。你能用简化的步骤编辑你的答案,以便我可以按照它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    相关资源
    最近更新 更多