来自数据库的Star micronics收据打印机图像

时间:2016-05-25 23:58:04

标签: java printing receipt

我有一个sm-t300i,我试图弄清楚如何从数据库中打印图像。我有图像数据,但不知道如何插入。我已经成功添加了资产中的图像,但不知道如何从原始图像数据。以下代码来自资产。也出于某种原因,下面的代码中的图像不会居中,我需要做一些其他的事情来使图像居中。谢谢。

  AssetManager assetManager = mContext.getAssets();
    InputStream istr = null;
    try {
        istr = assetManager.open("www/img/logo.bmp");
    } catch (IOException e) {
        e.printStackTrace();
    }

    Bitmap bm = BitmapFactory.decodeStream(istr);

    StarBitmap starbitmap = new StarBitmap(bm, false, 200);


    commands.add(new byte[] { 0x1b, 0x61, 0x01 }); //align center

    commands.add(starbitmap.getImageEscPosDataForPrinting(false,false));

1 个答案:

答案 0 :(得分:0)

看起来你可以转换base64并使其成为位图

String imagex = "iVBORw0KGgoAAAANS  etc";
Bitmap bm = StringToBitMap(imagex);
StarBitmap starbitmap = new StarBitmap(bm, true, 600);
commands.add(starbitmap.getImageEscPosDataForPrinting(false,true));


public Bitmap StringToBitMap(String encodedString){
    try {
        byte [] encodeByte=Base64.decode(encodedString, Base64.DEFAULT);
        Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
        return bitmap;
    } catch(Exception e) {
        e.getMessage();
        return null;
    }
}