我相信这段代码应该可以将 PDF 直接打印到端口 9100 上的大多数打印机上。
这个来源和这个来源似乎在细节上达成了一致。
我的打印机醒来并似乎“假脱机”了一会儿,但随后又安静了下来。
套接字代码当然非常粗糙,但仍然......
也许这只是我的特定打印机 *.
如果有人可以对此进行测试或指出任何错误或改进,将不胜感激。
import socket
job = [
b'\x1b%-12345X@PJL JOB NAME = "My Print Job Name"\r\n',
b'@PJL ENTER LANGUAGE = PDF\r\n',
open('mydoc.pdf', 'rb').read(),
b'\x1b%-12345X @PJL EOF\r\n',
b'\x1b%-12345X'
]
soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
soc.connect(('myprinter.local', 9100))
for b in job:
# print(b)
soc.sendall(b)
soc.close()
* 兄弟 MFC-J4620DW