问题标签 [pjl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - Delphi:PJL 命令到打印机并读回响应
在将 PJL 发送到打印机时,我正在努力从打印机获取信息。打印机支持 PJL,它是一个 USB 打印机。现在获取信息/示例似乎是一个问题,或者我正在寻找错误的地方。我知道在 MSDN 上有很多信息,但我已经尝试了所有的东西,从 docinfo 到写/读打印机,但似乎没有任何效果。
有人说可以使用 writeprinter 和 readprinter。我试过这个,当我写打印机时,打印机似乎在“做”一些事情,但读打印机返回或错误或空白。现在我认为这可能是因为打印驱动程序正在“锁定”端口,所以您无法从中读取信息?
我在某处看到的另一个选项是使用 writefile 和 readfile。在这里,您将获得打印机的物理端口部分,例如“\?\USB#VID_05CA&PID_0403#S5208603411#{28d78fad-5a12-11d1-ae5b-0000f803a8c2}”。然后将端口更改为“FILE”。使用带有路径的 writefile 和 readfile 作为上面的物理路径。获取您需要的信息,然后将端口设置回原始端口。这个也试过了,也报错。
我只是想做一个简单的@PJL INFO PAGECOUNT(我省略了转义字符等)。该字符串是正确的,因为在联网打印机上使用该字符串,它可以 100% 工作,我可以获得信息。但是本地打印机是个问题。
有没有人有这个工作或工作的例子?任何帮助将非常感激。
PS:以下是我尝试过的 100 个示例中的 1 个。这是 writeprinter 示例:
java - JAVA 套接字 - 执行 PJL 命令
在 Java 中,我正在尝试使用套接字连接到打印机(Canon iR5050 PCL6),使用端口为 9010 的主机 IP。我想使用 PJL 命令获取打印机的状态。我将 PJL 命令 (\x1B%-12345X@PJL INFO USTATUS \r\n\x1B%-12345X\r\n) 写入套接字输出流,并尝试从输入流中读取打印机的状态。没有从输入流中读取信息。怎么可能做到这一点?如果有人可以分享一些样品,那就太好了。这可能吗?
java - 通过 LPR 使用 HP 打印机进行打印 - PJL 和 PS
我正在使用打印机 HP LaserJet 5000 系列 PCL6。尝试使用 PJL 设置打印属性,例如副本和方向。使用 PostScript 作为基础工作语言。我正在使用 LPR 命令 (lpr -S{IP} -P{IP} test.txt) 运行以下代码以从 Windows 打印。打印机根本不打印任何内容。如果我删除 PJL 特定命令并单独运行 PS,则内容将正确打印。有什么我想念的吗?
我也试过用<ESC>
Ec 代替。
java - PJL 命令设置方向
我尝试使用 PJL 设置副本数量并使其正常工作。但是我无法让@PJL SET ORIENTATION=LANDSCAPE 工作。它始终以纵向打印。我也在寻找打印特定页面范围的选项,比如从第 2 页到第 5 页。这可以使用 PJL 实现吗?我正在使用打印机 HP LaserJet 5000 系列 PCL6。
printing - 使用 gsprint 使用 PJL 命令打印 PostScript 文件时出现问题
我们开发了一种内部打印解决方案,允许用户管理他们的打印(审核/合并/审查/发送到多台打印机)等......但是我们在流程的最后 - 最终打印时遇到了问题。
目前,我们的解决方案将文档(原始和合并后)存储在 PDF 中。我们需要能够将这些文档发送到特定的打印机,并在某些情况下(当用户选择该选项时)将第 1 页打印到托盘 8,将其余的打印到托盘 1。我们无法拆分 PDF 并打印将它们分开,因为它们也必须由打印机作为单个作业装订。
我们的想法是使用 ghostscript 将 PDF 文件转换为 PostScript 文件,然后将 PJL 命令插入 PostScript,然后使用 gsprint 打印修改后的 PostScript 文件。
不幸的是,ghostscript、postscript、PJL 和 gsprint 的组合似乎不起作用。我们尝试的 PJL 命令,我们可以在通过 windows 复制命令发送到打印机的文本文件中工作,但在放入 PostScript 文件并使用 gsprint 打印时似乎没有相同的影响。
谁能发现我们对 PostScript 所做的任何可怕的缺陷,或者知道为什么我们的 PostScript->PJL amends->gsprint 工作流程可能不起作用?
在线查找示例非常困难,因此很可能我们对 PJL 命令的放置不正确。
(//评论不在最终文件中)
然后我们采用这个修改后的 PostScript 并使用 gsprint,如下所示:
所有这些都打印到默认托盘并且未装订,即这些都没有按预期工作。
我希望很清楚我们正在努力实现的目标。任何帮助将不胜感激。
提前致谢。
PS:我们所有的打印机都是佳能打印机。
编辑:
在下面 KenS 的回答之后,逻辑工作流程似乎应该改为 PDF->PCL->添加 PJL->使用“副本”发送到打印机
不幸的是,我们仍然遇到这个问题,我们的打印机似乎忽略了某些 PJL 命令(打印机肯定是 PCL 打印机)。
如果我们使用 Microsoft Word 生成的 2 页 PDF,使用 ghostscript 将其转换为 PCL,然后使用 Notepad++ 编辑该 PCL 文件,添加以下内容:
文档从下部出纸盘中出来,但未进行双面打印。但更奇怪的是,当 DUPLEX = ON 时,打印机的打印时间似乎比 DUPLEX = OFF 时的完全相同的作业要长得多,而且听起来它在内部做一些不同的事情。
有任何想法吗?
ghostscript - Ghostscript 和 pxlcolor:如何在生成的 PCL 中生成额外的 PJL 条目
我必须在一个 PCL 文件中设置 Outbin,该文件是通过 Ghostscript 使用 device=pxlcolor 生成的。我正在寻找,但没有找到必要的参数。有人可以请教吗?我在 Windows 上的命令行是:
这会生成一个 pcl 文件,该文件从正确的输入托盘/PaperSource 中获取纸张。
php - 使用 PHP 代码将 PJL 命令添加到 PDF 文件中
如何在无需将 PDF 转换为 PostScript 的情况下将 PJL 命令插入 PDF
在我通过 FTP 或 LPR 将其发送到打印机之后。
我正在使用 Zend_Pdf 创建 PDF 文档。
**我尝试了这段代码没有成功
文件打印正确但不改变抽屉而不是夹子,有什么建议吗?
printing - PJL 状态回读命令
发送 PJL 命令后如何在 Windows 上接收来自打印机的响应?
我试图用 WireShark 监视网络打印机并直接读取打印机套接字,但没有任何效果。
java - How to programmatically achieve editing of the spool file header of the normal windows print queue 'spool file' before it is sent to the printer?
How to intercept and change the windows 7 print spool file (.SPL) to add some additional information in the header like '@PJL SET NAME="PainPoint" ' before this file is sent to the printer during the execution of the print job?
The .SPL file partial extract from top is :