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