Caysn打印机IOS平台打印开发包及示例程序_20170610

本文档详细介绍了Caysn打印机在iOS平台的SDK,包括BLEPrinting、NETPrinting、POSPrinting和LabelPrinting类的使用方法,以及各种打印功能如条形码、二维码、图片的实现细节,提供了完整的接口说明和示例代码。
摘要由CSDN通过智能技术生成

打印机开发包,接口说明文档,打印示例程序:Caysn打印机IOS开发包、文档、示例程序_20170610

系统要求:IOS8

CPU架构:armv7 armv7s arm64


说明文档:(压缩包里有附带接口说明文档,网页上也保留一份)


概述

 

1 NETPrintingBLEPrinting处理底层读写。

 

他们分别有自己的打开,关闭函数,有自己的回调接口。

继承自IO、重写了IO3个重要函数。

- (bool) IsOpened;

- (int) Write:(Byte * ) buffer offset:(int) offset count:(int) count;

- (int) Read:(Byte *)buffer offset:(int)offset count:(int)count timeout:(int)timeout;

 

2 POSPrinting LabelPrinting 封装了打印指令并持有一个IO接口。

 

POSPrinting封装了ESC/POS指令

 

LabelPrinting封装了标签打印指令

 

他们按照指令集的格式将数据组织好,然后调用IOWrite函数进行写入数据,调用Read函数读取数据。

 

 

使用

使用时,先实例化一个IO子类。以蓝牙打印为例:

①  先实例化一个POSPrinting(为方便描述,设变量名为pos),这个时候,直接调用POS_XXX系列函数,会发现并不能打印,因为这时候POSPrinting并没有持有一个可读写的IO。需要进行②③步。

②  先实例化一个BLEPrinting(为方便描述,设变量名为ble),然后调用Open函数连接到蓝牙打印机。

③  连接成功之后,调用posSetIO,将让pos持有ble,这样,后续的POS_XXX系列函数,就会通过bleWriteRead与打印机通讯。

各个类的区别

①  BLEPrintingNETPrintingIO这三者的区别

 A) IO是父类,提供统一的接口,供POSPrintingLabelPrinting使用。

 B) BLEPrinting是用于蓝牙通讯的,除了基本的Open Close IsOpened Read Write之外,还有

scan 扫描蓝牙打印机,扫描成功会调用回调接口BLEPrintingDiscoverDelegate

stopScan 停止扫描

BLEPrintingOpenDelegate Open成功之后会回调该接口

BLEPrintingDiscoverDelegate 扫描到打印机之后会回调该接口

BLEPrintingReceiveDelegate 收到数据之后会回调该接口

BLEPrintingDisconnectDelegate 蓝牙断开之后会回调该接口(多次调用Close不会调用)

 C) NETPrinting 是用于网络通讯的,除了基本的Open Close IsOpened Read Write之外,还有

NETPrintingOpenDelegate Open成功之后会回调该接口

NETPrintingDisconnectDelegate 连接断开之后会回调该接口(多次调用Close不会调用)

②  POSPrintingLabelPrinting 这两者的区别

 A) POSPrinting 封装了便携指令集

 

 B) LabelPrinting 封装了标签指令集。

 

普通热敏打印机(只支持ESC/POS指令集),只能使用POSPrinting控制打印机打印。

标签打印机(支持ESC/POS指令集、标签指令集),可以使用POSPrinting控制打印机打印,也可以用LabelPrinting控制打印机打印。

 

两套指令不能穿插使用,意思是:

使用LabelPrinting控制打印时,PageBegin PagePrint之间,不能穿插POSPrinting函数。

 

 

 

 

 


 

函数说明

 

 

POSPrinting

普通行式打印

POS_PrintText

 

描述:打印文本

 

Syntax

- (void) POS_PrintText:(char *)pszString x:(int)x nWidthTimes:(int)nWidthTimes nHeightTimes:(int)nHeightTimes nFontType:(int)nFontType nFontStyle:(int)nFontStyle

 

Parameters

pszString

要打印的内容。UTF8编码字符串。

 

x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)

支持左对齐,居中,右对齐

传入x见下表

x

含义

-1

左对齐

-2

居中对齐

-3

右对齐

大于等于0

横坐标

 

 

nWidthScale

指定宽度放大倍数 [0,7]

 

nHeightScale

指定高度放大倍数 [0,7]

 

nFontType

字体类型

0 标准字体

1 压缩字体

 

nFontStyle

指定字体风格,可以为下表中的一个或者若干个(相加即可)

Value

Meaning

0x00

正常

0x08

加粗

0x80

1点粗的下划线

0x100

2点粗的下划线

0x200

倒置(只在行首有效)

0x400

反显(黑底白字)

0x1000

每个字符顺时针旋转 90

 

 

 

Return value

 

 

Remarks

POS_PrintText并不立刻打印,需要调用POS_FeedXXX系列函数,才会把行缓冲区中的内容打印出来。

同一行不支持多种对齐方式。

POS_PrintBarcode

 

打印条码

 

Syntax

- (void) POS_PrintBarcode:(char *)pszString x:(int)x nType:(int)nType nUnitWidth:(int)nUnitWidth nHeight:(int)nHeight nHriFontType:(int)nHriFontType nHriFontPosition:(int)nHriFontPosition

 

Parameters

pszString

条码内容

 

x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)

支持左对齐,居中,右对齐

传入x见下表

x

含义

-1

左对齐

-2

居中对齐

-3

右对齐

大于等于0

横坐标

 

nType

可以为以下列表中所列值之一。

Value

Meaning

0x41

UPC-A

0x42

UPC-C

0x43

JAN13(EAN13)

0x44

JAN8(EAN8)

0x45

CODE39

0x46

ITF

0x47

CODEBAR

0x48

CODE93

0x49

CODE 128

 

nUnitWidth

指定条码的基本元素宽度。
可以为以下列表中所列值(n)之一。

n

单基本模块宽度
(连续型)

双基本模块宽度(离散型)

窄元素宽度

宽元素宽度

2

025mm

025mm

0625mm

3

0375mm

0375mm

10mm

4

05mm

05mm

125mm

5

0625mm

0625mm

1625mm

6

075mm

075mm

1.875mm

 

nHeight

条码高度

8点即1mm,填入80即可打印高度为1CM的条码。

 

nHriFontType

指定 HRIHuman Readable Interpretation)字符的字体类型。
可以为以下列表中所列值之一。

Value

Meaning

0x00

标准ASCII

0x01

压缩ASCII

 

nHriFontPosition

指定HRIHuman Readable Interpretation)字符的位置。
可以为以下列表中所列值之一。

Value

Meaning

0x00

不打印

0x01

只在条码上方打印

0x02

只在条码下方打印

0x03

条码上、下方都打印

 

 

Return value

 

 

Remarks

部分机型不支持指定起始位置,请使用左对齐,居中对齐,右对齐进行排版布局。

 


POS_PrintQRCode

 

打印二维码(QR码)

 

Syntax

- (void) POS_PrintQRcode:(char *)pszString x:(int)x nUnitWidth:(int)nUnitWidth nVersion:(int)nVersion nECCLevel:(int)nECCLevel

 

Parameters

pszString

二维码文本

 

x
指定水平方向的起始点位置离打印区域左边界的点数。(横坐标)

支持左对齐,居中,右对齐

传入x见下表

x

含义

-1

左对齐

-2

居中对齐

-3

右对齐

大于等于0

横坐标

 

 

nUnitWidth

QR码单元宽度,范围[1,16]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值