Фон
Я относительно новичок в UNIX-подобных операционных системах и, в лучшем случае, новичок в MacOS, так что я могу ошибаться, но вот оно.
Я присоединился к проекту, целью которого является программное использование термопринтера через USB или RS232 для вывода чеков. Мне нужно использовать команды ESCPOS для печати квитанции.
Подробнее
Я подключил свой принтер к MacBook через USB. Я могу подтвердить, что ОС принимает USB-устройство: оно отображается в системном отчете. Также, следуйте этому сообщению , чтобы настроить CUPS.
Я использую escpospp lib, это код для печати образца:
#include <iostream>
#include "escpospp/escpospp.h"
int main(){
try{
Printer::initializePrinter(std::pair<int,int>(0x04b8,0x0e03));
Printer &printer = Printer::getPrinter();
printer.text("This is a **sample** text!\n");
printer.cut();
} catch (int e){
//There was an error
}
return 0;
}
Я изменил значения в Printer::initializePrinter(std::pair<int,int>(0x04b8,0x0e03));
, чтобы правильно указать свое устройство, проверив вывод системного отчета.
Когда я пытаюсь бежать, я получаю Cannot open device
. Это ошибка из основного libusb.
Примечание. Я могу печатать с помощью команды lpr
.
Вопрос
Понятно, что я что-то делаю не так или что-то пропустил по пути. Как программно отправить команды ESCPOS на подключенный термопринтер USB в MacOS с указанными выше подробностями?