将杯子的RAW ASCII打印到点矩阵打印机



请原谅我的新手 - 我尚未设法找到功能的答案。也许是因为我不了解语法,也许是因为它与我的打印机不完全合作。

我正在尝试使用杯子将ASCII文件从Mac打印到Panasonic KX-P1150。在终端I类型中:

lp -o raw filename.txt

它有效。但是,我想选择一个更高的音高(较小的点大小(,这显然可以通过将打印机告诉ESC-G来完成。

微米螺距设置打印为每英寸15个字符(每行最多120个字符(。

Name:   ESC     g
Dec.:   27      103
Hex.:   1B      67

我想做的只是将ESC-G嵌入文本文件的顶部,大概是十六进制,但是无论我使用哪种语法,打印机都不会在不更改其设置的情况下打印命令。

我已经尝试了 x1b,'[以及其他一些事情。也许这真的很简单,有人可以将我直接放在语法上?

非常感谢您的时间。

我相信这是您正在寻找的(ESC/P(代码:

printf "x1b@x1bMx1b2x1bIx01x1bQ`" | nc lp1 9100

这是在安装了NC(NetCat(的CentOS盒上测试的。代码说明:

x1b@ - Init Printer
x1bM - CPI=12 (option x1bP CPI=10)
x1bIx01 - set left margin to column 1
x1bQ` - set right margin to column 96

假设LP1(LP1.Example.NET(是JetDirect(或兼容(打印队列的网络打印机,带有端口9100 Open(以及主机文件中的条目(。我尚未尝试通过端口21打印或在没有杯子的情况下打印的515个队列。

如果它不在网络上,则可以尝试通过并行(LP0(,序列(/dev/ttys x (直接将其管道位置[1-9](或USB0

printf "x1b@x1bMx1b2x1bIx01x1bQ`" | usb0

更新。

linuxquestions.org的一个" keefaz"提出了解决此问题的建议:

echo $'eg' > code.txt
cat code.txt filename.txt > print.txt
lp -o raw print.txt

最新更新