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();
|
}
|
|
|
}
|
|
|
}
|