通常のテキストとして印刷されたエスケープコード(つまり、printerコマンド)を受け入れることができるプリンターを扱っています。
たとえば、プレーンテキストファイルを作成して「〜TR%10 10 20 20?」と書くと、次にこれを印刷すると、プリンタはそれをコマンドとして認識し、そのビットのテキストを用紙に印刷しません。
ポストスクリプトファイル( PSモジュールを使用してPHPから作成)を介してこれを実行しようとすると、プリンターにコマンドと同じテキストを認識させることができません。代わりに、紙に印刷されます。
このテキストビットがそのままプリンタに送信されるようにするために使用できるPSコマンド/フォーマットはありますか?
ありがとう
更新: PDFファイルでも(PHP + TCPDFを使用して)試してみましたが、どちらもうまくいきませんでした。
更新2:サンプルコードの追加
$ps = ps_new();
ps_open_file($ps, '/var/www/data/test.ps');
ps_set_info($ps, 'BoundingBox', '0 0 1011 638');
ps_set_info($ps, 'Orientation', 'Landscape');
ps_set_info($ps, "Creator", "PHP");
ps_set_info($ps, "Title", "Test");
ps_set_info($ps, "Keywords", "test");
ps_begin_page($ps, 1011, 638);
ps_set_parameter($ps, 'SearchPath', '/var/www/data/font');
$psfont = ps_findfont($ps, "ARIALN_0", "", 1); // Arial Narrow font
ps_setfont($ps, $psfont, 10.0);
ps_show_xy($ps, "ABC", 10, 10);
ps_show_xy($ps, "~TR%41 4 53 11?", 10, 50);
ps_end_page($ps);
ps_close($ps);
ps_delete($ps);
header('Content-type: application/postscript');
header('Content-Disposition: attachment; filename="test.ps"');
readfile('/var/www/data/test.ps');