美文网首页
iOS开发 蓝牙打印小票

iOS开发 蓝牙打印小票

作者: zcz19911 | 来源:发表于2018-05-14 17:53 被阅读0次

    要求:手机通过蓝牙连接蓝牙打印机,在手机上点击‘打印’,打印机就打印出小票(小票就跟送外卖的那种)。

    设备:BT58S热敏打印机,iPhone(iPod或iPad也可以)

    开发过程中参考https://github.com/Haley-Wong/SEBLEPrinter这个demo实现打印,该demo已经将蓝牙的扫描外设,连接外设,扫描外设的服务和特征都封装好了,所以我就直接用他封装的开发。

    //首先创建管理者

    SEPrinterManager *_manager = [SEPrinterManager sharedInstance];

    //然后调用扫描外设方法

    [_managerstartScanPerpheralTimeout:0Success:^(NSArray *perpherals,BOOLisTimeout) {

            //perpherals是扫描到的所有外设

        }failure:^(SEScanErrorerror) {

        }];

    //扫描后就是连接外设

    [[SEPrinterManager sharedInstance] connectPeripheral:peripheral completion:^(CBPeripheral *perpheral, NSError *error) {

            if (error) {

                //连接失败

            } else {

                //连接成功"

            }

        }];

    //接下来就是设置要打印的数据

    HLPrinter *printer = [[HLPrinter alloc] init];

    [printer appendText:@"------------基本信息------------" alignment:HLTextAlignmentCenter bold:NO];

    [printer appendTitle:@“单价” value:@"币种" fontSize:HLFontSizeTitleMiddle bold:NO];

    [printer appendSeperatorLine];//分隔线

    [printer appendNewLine];//新起一行

    [printer appendImage:[UIImage imageNamed:@"imageName.png"] alignment:HLTextAlignmentCenter maxWidth:300];//添加打印图片

    NSData *mainData = [printer getFinalData];//将打印的数据转化为NSData类型数据

    //最后就是调用打印的方法

    [[SEPrinterManager sharedInstance] sendPrintData:mainData completion:^(CBPeripheral *connectPerpheral, BOOL completion, NSString *error) {

            //completion是否完成,error错误信息

        }];

    相关文章

      网友评论

          本文标题:iOS开发 蓝牙打印小票

          本文链接:https://www.haomeiwen.com/subject/mbmddftx.html