【问题标题】:How to generate a 24bit Bitmap in android如何在android中生成24位位图
【发布时间】:2017-02-06 16:43:11
【问题描述】:

我正在开发需要生成 QRCode 的 android 应用程序,并且我成功地完成了这项工作。

我的问题出在打印方面。我使用了内置热敏打印机的 Mobiprint 3 设备。但我的问题是设备打印机只支持 24 位位图。

我的问题是,有没有办法在 android 中创建 24 位位图?因为它只支持32位。我用谷歌搜索了一个星期,但没有人解决我的问题。

提前谢谢你。

【问题讨论】:

  • android的位图不起作用?
  • 你试过了吗?您遇到什么类型的错误?
  • @AkshayTilekar 是的,我尝试了一些东西。我按照google zxing中的教程进行操作。它在显示方面效果很好。但是当我调用位图进行打印时。它打印一个纯黑色的正方形。
  • @josedlujan - android 中的位图仅用于显示。但是对于打印它不起作用:(

标签: java android


【解决方案1】:

顺便说一句。

这是我的代码

//二维码位图生成方法

    try {
        bitmap = qrGenerator.generateQRCode(duCode);
        int width, height;
        height = bitmap.getHeight();
        width = bitmap.getWidth();

        bmpGrayscale = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
        Canvas c = new Canvas(bmpGrayscale);
        Paint paint = new Paint();
        ColorMatrix cm = new ColorMatrix();
        cm.setSaturation(0);
        ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
        paint.setColorFilter(f);
        c.drawBitmap(bitmap, 0, 0, paint);

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

这是调用位图进行打印时。

print.printBitmap(getBitmap());

此代码仅打印纯方形黑色。

PS:print.printBitmap() 来自 Mobiprint API。

【讨论】:

    猜你喜欢
    • 2011-06-05
    • 1970-01-01
    • 2019-10-28
    • 2011-02-05
    • 1970-01-01
    • 2014-05-20
    • 2015-07-05
    • 1970-01-01
    • 2011-04-25
    相关资源
    最近更新 更多