1.設(shè)備是文件

在Linux上安裝打印機(jī)Linux驅(qū)動(dòng)程序并不容易。所有類型的小票POS打印機(jī)幾乎只有windows驅(qū)動(dòng)程序,在Linux上測(cè)試各種不同的打印機(jī)驅(qū)動(dòng)程序是不正常的。

后來(lái)想到Linux系統(tǒng)中所有設(shè)備都以文件形式表示,于是發(fā)現(xiàn)直接免驅(qū)方式打印更方便。

因?yàn)榇诖蛴C(jī)接在Linux系統(tǒng)后,對(duì)應(yīng)端口 /dev/ttyS0

usb打印機(jī)只要插入Linux電腦,就自動(dòng)在/dev/usb 下顯示成文件名 /dev/usb/lp0,(也可能是 lp1或lp2,去/dev/usb下查看即可)

二.開(kāi)啟設(shè)備權(quán)限

使用串口打印,需要先開(kāi)啟串口的訪問(wèn)權(quán)限。命令如下:

sudo chmod a+rw /dev/ttyS0 執(zhí)行該命令,表示開(kāi)放COM1的權(quán)限

USB 方式 相同,接上USB打印機(jī)。上電后,查看/dev/usb/lp0的設(shè)備是否存在。

然后開(kāi)啟串口的訪問(wèn)權(quán)限。命令如下:

sudo chmod a+rw /dev/usb/lp0 執(zhí)行該命令,表示開(kāi)放usb打印機(jī)的權(quán)限

Ubuntu開(kāi)機(jī)之后會(huì)執(zhí)行/etc文件中的腳本,

所以我們可以直接在/etc中添加啟動(dòng)腳本。

當(dāng)然要添加到語(yǔ)句:exit 0 前面才行。

如:

sudo vi /etc

然后在 exit 0 前面添加好兩行chmod命令。

三.測(cè)試打印

可以直接 在終端 測(cè)試打印

echo "Test Print" > /dev/ttyS0

echo "Test Print" > /dev/usb/lp0

不過(guò),這時(shí)候 測(cè)試中文 打印 卻打印出亂碼

echo "Test Print 測(cè)試打印 " > /dev/ttyS0

四.解決Qt中文打印亂碼

花了不少時(shí)間查詢,開(kāi)始以為是Linux系統(tǒng)編碼問(wèn)題,按網(wǎng)上方法處理,沒(méi)有效果,幾經(jīng)辛苦終于找到解決方法,實(shí)在是太簡(jiǎn)單

在頭文件處理

public:

下加入

QTextcodec *code= QTextCodec::codecForName("GB18030");

代碼部分:

Posix_QextSerialPort *SerialPort;

SerialPort = new Posix_QextSerialPort(_SerialPortName, QextSerialBase::Polling);

//使用第三方 Posix_QextSerialPort 類,設(shè)置部分在此略去...

QString PrintLine= "Print Data 測(cè)試 " ;

SerialPort->write(code->fromUnicode(PrintLine));

打印效果正常。

這第三方 Posix_QextSerialPort 類,實(shí)在是好用,僅需少少改動(dòng),直接同時(shí)適用于 串口與usb打印機(jī)(usb打印機(jī)免去串口波比率等設(shè)置即可)。并口打印機(jī)應(yīng)該直接適用,估計(jì)與usb方式的改動(dòng)相似,我這沒(méi)有LPT打印機(jī),就沒(méi)測(cè)試了。

1.《打印機(jī)怎么打中文看這里!非常簡(jiǎn)單,解決Qt免驅(qū)方式POS打印機(jī)打印中文亂碼問(wèn)題》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無(wú)關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。

2.《打印機(jī)怎么打中文看這里!非常簡(jiǎn)單,解決Qt免驅(qū)方式POS打印機(jī)打印中文亂碼問(wèn)題》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來(lái)源地址,http://f99ss.com/why/3053241.html