打印数据

向服务端发送打印数据。

tijet_client_set_print_data

发送打印数据到服务端。

  • client: 客户端句柄。

  • data: 二进制打印数据缓冲区。

  • data_len: 数据长度(字节)。

  • index: 打印数据序号(由业务层传入,用于去重 / 顺序控制)。

  • is_static: 0 = 普通数据(一次性打印),非 0 = 静态数据(重复打印同一份)。 静态数据会被服务端缓存以优化重复传输。

  • checksum_buf (输出): 校验和输出缓冲区。传 NULL 表示不关心校验和。

  • checksum_buf_size (输入/输出):

  • [in] checksum_buf 的容量(字节)。checksum_buf 为 NULL 时传 0。

  • [out] 校验和字符串所需字节数(含结尾 \0)。 当前实现输出 64 字符的 SHA-256 十六进制字符串,需要 65 字节。

  • 返回: TIJET_OK — 发送成功

  • 返回: TIJET_ERR_NOT_CONNECTED — 未连接

  • 返回: TIJET_ERR_INVALID_ARG — client / data 为 NULL 或 data_len 为 0

  • 返回: TIJET_ERR_BUFFER_TOO_SMALL — checksum_buf 不足

  • 返回: TIJET_ERR_SERVER — 服务端拒绝数据

校验和示例:

uint8_t print_data[] = { 0x1B, 0x40, ... };
char checksum[65] = {0};
size_t csum_size = sizeof(checksum);
int rc = tijet_client_set_print_data(cli, print_data, sizeof(print_data),
0, 0, checksum, &csum_size);
if (rc == TIJET_OK) {
printf("SHA-256: %s\n", checksum);  // 64-char hex string
}