1

Ruby を使用して、IP アドレスを使用して一連のデータ文字列を Zebra プリンターに送信します。

これが私が始めたRubyコードです:

require 'socket'  
streamSock = TCPSocket.new( "127.0.0.1", 20000 )  
#streamSock.send( "Hello\n" )  
str = streamSock.recv( 100 )  
print str  
streamSock.close  

"Hello\n"この部分を、この一連の文字列の ZPL (Zebra Print Language) コードに置き換える必要があります。

"^XA" +

"^FO50,50" +

"^A0N50,50" +

"^FDHello, World!^FS" +

"^XZ";

各行に #streamSock.send( "xxx" ) を使用するいくつかの方法を試しました - 例: #streamSock.send( "^XA" ) - そして、他のすべての文字列要素を別々に。

次のように、ZPLコードの文字列全体を1行に入れるいくつかのバリエーションを試しました

streamSock.send( "^XA^FO50,50^A0N50,50^FDHello, World!^FS^XZ" )

Zebra ラベル プリンタが応答しません。別のユーティリティを使用して、以前の一連の文字列をテキスト ファイルとしてプリンタに送信すると、正常に印刷されます。

これを機能させるためにRubyコードがどうあるべきかについてのアイデアはありますか?

4

1 に答える 1

2

わたしにはできる:

require 'socket'

streamSock = TCPSocket.new( "192.168.205.214", 6101 )
str = "^XA" + "^FO50,50" + "^A0N50,50" + "^FDHello World^FS" + "^XZ"
streamSock.send( str , 0)

streamSock.close
于 2012-11-13T18:19:09.827 に答える