服務與支持
                    Service and support
                    開發打印方面,如何實現左邊二維碼右邊文字(或者2個二維碼并排打?。??
                    2022-06-29 發布者:群索科技

                    這種需求比較常見,目前市面上的機器基本上都只有文字、圖片的打印方法可調用,但單純的打印文字、圖片是無法實現文字圖片并排打印的,只能考慮使用圖片方式實現,思路如下:


                    把文字生成圖片,然后和二維碼圖片左右合并成一張,再調用打印圖片的方法,將合成的圖片打印出來,這樣即可達到目的,另外需要注意,圖片左右合并時候,需要2張圖片高度一致,否則低的一邊會出現黑邊,同理,上下合并則需要2張圖片寬度一致


                    1. 附參考方法:

                    /**

                    * 文字轉圖片

                    * @param text 將要生成圖片的內容

                    * @param textSize 文字大小

                    * @return

                    */

                      public static Bitmap textAsBitmap(String text, float textSize) {


                    TextPaint textPaint = new TextPaint();


                    textPaint.setColor(Color.BLACK);


                    textPaint.setTextSize(textSize);


                    StaticLayout layout = new StaticLayout(text, textPaint, 380,

                    Alignment.ALIGN_NORMAL, 1.3f, 0.0f, true);

                    Bitmap bitmap = Bitmap.createBitmap(layout.getWidth() + 20,

                    layout.getHeight() + 20, Bitmap.Config.ARGB_8888);

                    Canvas canvas = new Canvas(bitmap);

                    canvas.translate(10, 10);

                    canvas.drawColor(Color.WHITE);


                    layout.draw(canvas);

                    Log.d("textAsBitmap",

                    String.format("1:%d %d", layout.getWidth(), layout.getHeight()));

                    return bitmap;

                    }


                    /**

                    * 兩張圖片左右合并成一張

                    *

                    * @param bitmap1

                    * @param bitmap2

                    * @return

                    */

                    public Bitmap twoBtmap2One1(Bitmap bitmap1, Bitmap bitmap2) {

                    Bitmap bitmap3 = Bitmap.createBitmap(bitmap1.getWidth()+bitmap2.getWidth(),

                    bitmap1.getHeight() , bitmap1.getConfig());

                    Canvas canvas = new Canvas(bitmap3);

                    canvas.drawBitmap(bitmap1, new Matrix(), null);

                    canvas.drawBitmap(bitmap2,bitmap1.getWidth(), 0, null);

                    return bitmap3;

                    }


                    // 縮放圖片

                    public static Bitmap zoomImg(Bitmap bm, int newWidth, int newHeight) {

                    // 獲得圖片的寬高

                    int width = bm.getWidth();

                    int height = bm.getHeight();

                    // 計算縮放比例

                    float scaleWidth = ((float) newWidth) / width;

                    float scaleHeight = ((float) newHeight) / height;

                    // 取得想要縮放的matrix參數

                    Matrix matrix = new Matrix();

                    matrix.postScale(scaleWidth, scaleHeight);

                    // 得到新的圖片

                    Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix,

                    true);

                    return newbm;

                    }


                    深圳市群索科技有限公司


                    電話:0755-23280616/23280696


                    郵箱:info@szqunsuo.com


                    網址:www.deswign.com


                    地址:廣東省深圳市西鄉航城工業區富鑫林工業園C棟4樓

                    四虎成人精品国产永久免费,国产av一区二区三区香蕉,图片小说视频一区二区,精品精品国产手机在线观