打印功能都是根据AI返回的代码合成的,没有预览,只有直接往打印机输出并打印,只实现了画线,矩形 文字,椭圆 几个功能,文字支持旋转任意角度,使用xps输出的打印效果
代码可以用chatGPT查询 Chat机器人
接口调用的js调用代码
var printer = new TPrinter({Title: "testprint", PageWidth: 210 //纸张大小 宽度 单位毫米, PageHeight: 297 //纸张大小 高度 单位毫米, PrinterNameKey: "XPS"//"EPSON9F2845 (K200)"});//打印文本printer.TEXT("测", { Color: "#0000FF", x: 30, y: 0, Rotate: 45 });printer.TEXT("测", { Color: "#0000FF", x: 40, y: 0 });printer.TEXT("测", { Color: "#0000FF", x: 0, y: 40 });printer.TEXT("测", { Color: "#0000FF", x: 0, y: 40, Rotate: 45 });printer.TEXT("试", { Color: "#0000FF", x: 0, y: 0, Rotate: 45 });printer.TEXT("测试2", { Color: "#FF0000", x: 0, y: 10, FontSize: 10, Align: "center" });printer.TEXT("测试2测试2测试2测试2测试2", { Color: "#00FF00", x: 1, y: 20, x1: 30, y1: 40, FontSize: 4, Rotate: 45 });printer.TEXT("测试2",{Color: "#00FF00", x: 10, y: 60, x1: 30, y1: 90, FontSize: 4, Align: "center", FontName: "隶书"});//画线printer.LINE({x: 0 //线段起始点距离纸张左边 x 毫米, y: 55 //线段起始点距离纸张顶端 y 毫米, x1: 180 //线段终点距离纸张左边 x1 毫米, y1: 130 //线段终点距离纸张顶端 y1 毫米, Color: "#ff0000" //线段颜色 不设置默认黑色, Style: 2 //线段样式 1 线段 2 点 3线段点 4 线段点点, Width: 1 //线条宽 毫米//, Page: 1 //第几页打印});printer.LINE({x: 50 //线段起始点距离纸张左边 x 毫米, y: 0 //线段起始点距离纸张顶端 y 毫米, x1: 180 //线段终点距离纸张左边 x1 毫米, y1: 130 //线段终点距离纸张顶端 y1 毫米, Color: "#ff0000" //线段颜色 不设置默认黑色, Style: 2 //线段样式 1 线段 2 点 3线段点 4 线段点点, Width: 1 //线条宽 毫米//, Page: 1 //第几页打印});//绘制矩形printer.RECT({x: 0 //矩形左上角距离纸张左边 x 毫米, y: 20 //矩形左上角距离纸张顶端 y 毫米, x1: 50 //矩形右下角距离纸张左边 x1 毫米 , y1: 50 //矩形右下角距离纸张顶端 y1 毫米, Color: "#ff0000"//线段颜色 不设置默认黑色, Style: 0 //线段样式 1 线段 2 点 3线段点 4 线段点点, Width: 2 //线条宽 毫米//, Page: 2 //第几页打印});printer.print();
演示地址 无预览打印(https://d.iyanhong.com/demos/print.html)