左晓为主开发手持机充值管理机
zuoxiao
2024-09-29 ea8b02bbc2d20dc3db5b045fac4e6ddff7f44b7c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package com.dayu.baselibrary.tools.print;
 
import android.app.Application;
import android.util.Log;
 
import com.android.newpos.printer.PrinterListener;
import com.android.newpos.printer.PrinterManager;
import com.android.newpos.printer.bean.PrintAlignMent;
import com.android.newpos.printer.bean.PrintFontSize;
import com.android.newpos.printer.bean.PrintTextProperty;
import com.pos.device.SDKManager;
 
import java.util.List;
 
/**
 * author: zuo
 * Date: 2024-09-27
 * Time: 11:10
 * 备注:华智融海公司打印相关
 */
public class HuaZhiRongHaiPrint {
 
    static HuaZhiRongHaiPrint huaZhiRongHaiPrint;
 
    public static HuaZhiRongHaiPrint getInstance() {
        if (huaZhiRongHaiPrint == null) {
            huaZhiRongHaiPrint = new HuaZhiRongHaiPrint();
        }
        return huaZhiRongHaiPrint;
    }
 
    public void connectPrinterService(Application context) {
        SDKManager.init(context, () -> {
            Log.d("application", "初始化成功");
            PrinterManager.getInstance().init(context.getApplicationContext());
        });
    }
 
 
    /**
     * 打印指定字体的文本,字体设置只对本次有效
     *
     * @param content: 要打印文字
     * @param isBold:  是否加粗
     * @param size:    字体大小
     */
    public void printText(List<String> content, float size, boolean isBold, boolean isUnderLine) {
 
        try {
            for (int i = 0; i < content.size(); i++) {
                PrinterManager.getInstance().addText(new PrintTextProperty(PrintFontSize.LARGE, PrintAlignMent.LEFT, true), content.get(i));
            }
            PrinterManager.getInstance().feedLine(3);
            PrinterManager.getInstance().startPrint(new PrinterListener() {
                @Override
                public void onFinish() {
                }
 
                @Override
                public void onError(int i) {
 
                }
            });
        } catch (Exception e) {
            e.printStackTrace();
        }
 
 
    }
 
 
}