#ios #swift #printing #bluetooth #bluetooth-lowenergy
#iOS #swift #печать #bluetooth #bluetooth-низкое энергопотребление
Вопрос:
Я хочу распечатать с термопринтера, используя команду BLE из приложения iOS. Для этого я использовал библиотеку принтеров из COCOAPODS. Я использую принтер cashino ptp-ii для снятия печати. В моем коде, когда я начинаю печатать данные (изображение) при нажатии кнопки, принтер просто начинает печатать пустые страницы и не прекращает печать, и я должен вручную отключить его, чтобы остановить его. Ниже приведен мой код, который я использовал для печати:
let image = UIImage(named: "demo")!
if pm.canPrint {
if let data = UIImageJPEGRepresentation(image, 1.0) {
var receipt = Receipt(
data
)
receipt.feedLinesOnTail = 2
receipt.feedPointsPerLine = 60
pm.print(receipt)
}
} else {
performSegue(withIdentifier: "ShowSelectPrintVC", sender: nil)
}
Комментарии:
1. Какая библиотека принтеров? Ссылка?
3. Похоже, что в этой библиотеке нет документации, но пример в библиотеке показывает создание
Receipt
объекта, который содержит элементы, включая изображение. Затем данные отправляются на принтер. Я подозреваю, что вы просто отправляете необработанные байты данных jpeg на принтер.4. Да, потому что объект получения ожидает форму данных, и она отправляется. Я делаю неправильно? И что мне следует изменить, если я хочу печатать pdf напрямую? Есть ли у вас какие-либо ссылки на какой-либо другой sdk / библиотеку?
5. Он принимает данные, но я предполагаю, что данные должны быть в формате ESC / P, поэтому он предоставляет
Receipt
расширениеData
(что не является выбором дизайна, который я бы сделал), которое может кодировать для вас различные типы объектов.