2011-04-04 66 views
2

我正在使用在我的計算機上定義爲默認打印機的斑馬打印機。將數據作爲原始數據傳遞給打印機

我想將所有信息作爲原始信息傳遞給斑馬驅動程序,告訴打印機驅動程序不要對打印機進行任何編碼,而是將其一直傳遞給打印機。

我想用PrintDocument,這可能嗎?

或者你會建議點別的嗎?

+0

你可以舉一個API的例子嗎?例如,如果SDK使用C或C++,你可以發佈一個例子嗎? – 2011-04-04 18:02:47

+1

使用Zebra打印機,我發現使用ZPL是最簡單的方法。 – 2011-04-04 18:05:06

+0

@Austin Salonen:我如何處理連接爲默認打印機的斑馬,我如何發送數據到我已經在ZPL格式中格式化後。 – 2011-04-04 18:07:15

回答

1

如果您轉到Zebra打印機驅動程序的「高級設置」選項卡,則可以「啓用直通模式」。然後,只需確保您的流與${開始,以}$結束之後,駕駛員也不會做任何東西其間的${}$

+0

這真的工作使用.NET? (我想這就是'PrintDocument'的一部分。)我認爲.NET直出不支持打印機字體,因爲它在打印時將所有東西都渲染成圖形。要使passthrough模式正常工作,您需要使用打印機字體。 – paulmelnikow 2011-08-16 18:42:02

+0

Zebra驅動程序可以選擇傳遞所有數據而不將其轉換爲位圖。如果僅使用通用打印機驅動程序,則不會獲得此功能 – 2011-08-16 18:49:06

+0

如果文本是TrueType字體*,還是需要使用打印機字體,那麼該傳遞選項是否可以工作?我使用Zebra Designer驅動程序。 – paulmelnikow 2011-08-16 19:08:03

1

根據我的經驗,通過Windows打印驅動程序對於Zebra打印機來說過於複雜。如果你能建立的ZPL,有兩種方案(一個真正容易和其他的稍微複雜):

  1. 保存的ZPL到一個文件,並通過FTP傳送到打印機。
  2. 通過套接字將ZPL傳輸到打印機。

我已經完成了這兩個過程,據我所知,兩個系統仍然運行沒有問題。

+0

如果我的Zebra通過USB連接到計算機並被定義爲默認打印機,我不確定它是否具有通過ftp上傳的IP地址。 – 2011-04-04 18:40:53

+0

我相信你可以複製一個文件到LPT – 2011-04-04 19:11:16

+0

但我通過USB連接連接。 – 2011-04-04 19:30:36

0

你不能只是打印任何原始數據斑馬打印機。打印機只能識別打印機語言支持的命令,例如:某些型號的ZPL,EPL或兩者。

Printdocument是可能提供的上述代碼之一寫入您要發送到打印機的文本文件中。例如:

^XA 
^FO50,50 
^A0N,30,30^FDTEST PRINT^FS 
^XZ 

將這些命令保存在記事本中並保存爲可以說「test.txt」。 現在可以通過執行以下DOS命令直接打印該文檔到打印機

打開DOS提示符和類型(假設打印機通過LPT2端口連接的):

copy test.txt lpt2 

如果打印機通過連接一個USB端口,安裝「通用/純文本」打印機(默認情況下在Windows中可用),然後打開記事本並打印到通用/純文本打印機。