POS Принтер Cutter в неправильном месте

Я пытаюсь вырезать бумагу после каждой строки в VB6 вот код

Open "LPT1" For Output As #1
Print #1, Chr$(&H1B); "@"; 'Initializes the printer (ESC @)
Print #1, Chr$(&H1B); "d"; Chr$(0); 'Prints and line feeding (ESC d)
Print #1, Chr$(&H1B); "!"; Chr$(17); 'Selects double-height mode
For a = 1 To 5
Print #1, "14-January Invoice 01000"; Chr$(&HA); 'Prints and line feed
Print #1, Chr$(&H1B); "m"; Chr$(&HA); 'Cut Paper
Next
Print #1, Chr$(&H1D); "V"; Chr$(66); Chr$(0);
Close #1

он должен печатать линию после того, как обрезать бумагу, но он начинает резать бумагу сверху

любое тело может помочь мне в этом?

Обновление: в основном, я хочу сделать маленькие метки, где на них написаны дата и счет, и метка длиной до 1 см.

1 ответ

Вы выполняете частичное сокращение (ESC m) внутри цикла, после каждой строки, которую вы печатаете. Я думаю, что вы, вероятно, хотите удалить эту строку:

Print #1, Chr$(&H1B); "m"; Chr$(&HA); 'Cut Paper

После цикла вы выполняете операцию подачи и резки (частичное сокращение) (GS V 66 0) после завершения цикла. Я думаю, что вы, вероятно, хотите сохранить эту линию, чтобы выполнить обрезку после печати.

Другие вопросы по тегам