1

Я печатаю никакие строки в DOS(CMD Prompt In Windows 7), используя пакетный файл на принтере DOT MATRIX. Это бумага А5. Проблема в том, что я не могу добавить более 53 символов в строку для печати A5. Как увеличить количество символов в строке для этого размера A5.

2 ответа2

1

Этот принтер (TVS MSP 250 Star) поддерживает ESC/P (это стандарт Epson) и эмуляцию IBM Proprinter. Это означает, что вы можете отправить небольшой файл до фактического файла, который переключает принтер в сжатый режим.

Для эмуляции ESC/P вы можете сделать следующее:

Создайте файл small.txt :

<#27><#15>

Это не буквальный файл. Файл должен быть всего 2 символа (# 27 и # 15). Вам понадобится редактор, который может создать символы "Escape" (# 27) и "Condensed" (# 15) (например, Hex-редактор). Если у вас его нет, смотрите ниже, как создать файл.

Далее вы можете распечатать свой файл так:

copy small.txt+ACTUAL_FILE.TXT LPT1
exit

Если у вас нет Hex-редактора, вы можете сделать следующее:

Создайте текстовый файл со следующим (назовите его small.vbs):

Wscript.Stdout.Write Chr(27)+Chr(15)

Затем выполните в командной строке следующее:

cscript /nologo small.vbs > small.txt

Это приведет к созданию файла small.txt который вы можете использовать с командой copy.

Изменить: рекомендуется попробовать #15 только в первую очередь. Если это не сработает, попробуйте #27#15 .

Чтобы написать #15 в C #, вы можете использовать (char)15 или \x0F .

Из руководства ESC/P: а также

Редактировать:

Подводя итог (исключая границы / поля, так что может быть меньше с полей):

  • 10 cpi ≈ 58 символов = Esc P (#27P)
  • 12cpi ≈ 70 символов = Esc M (#27M)
  • 15cpi ≈ 87 символов = Esc g (#27g)
  • Сжатые 10cpi ≈ 100 символов = Esc P SI (#27P#15)
  • 12 cpi, сокращенно ≈ 116 символов = Esc M SI (#27M#15)
  • 15cpi сгущенное ≈ (нет в наличии)

Таким образом, самый маленький будет #27M#15 . (116 символов)

Если вам не нужно открывать файл в обычном редакторе, вы можете включить эти коды в свой файл. Затем вы также можете добавить лакомства, такие как жирный шрифт, курсив и т.д. Чтобы задать слово жирным шрифтом, вы можете сделать следующее:

This is a #27Ebold#27F word.

#27E устанавливает жирный шрифт, а #27F отменяет его снова. Вы также можете переключиться обратно на 10 cpi и объединить его с жирным шрифтом.

#27M#15This is a #18#27P#27Ebold#27F#27M#15 word.

#27M#15 чтобы установить его в сжатый 12cpi. #18 отменить сжатый. #27P 27P, чтобы установить 10cpi, и после слова #27M#15 чтобы установить его в 12cpi, снова сжато.

Вы также можете использовать «Двойной шрифт ширина / высота»:

#27M#15This is a #27W#1#27w#1big#27W#0#27w#0 word.

#27W#1 Двойная ширина шрифта и #27w#1 Двойная высота шрифта и #0 чтобы отменить их снова.

Вы видите, что вы можете объединить все эти коды, чтобы сделать что-нибудь. Существует также "Выбор мастера" (стр. 125 руководства). Если вы много переключаетесь между шрифтами, вы можете использовать это для переключения cpi, полужирного, сжатого, курсива и т.д. В одной команде. (#27!+n, где n - это тип)

0

Во-первых, вам нужно найти язык принтера, который используется принтером. Затем найдите и отправьте сжатую команду печати перед началом работы. Многие устройства с матричным типом точек используют последовательность escape-кода, поэтому вы посылаете символ esc, который иногда рассматривается как гекс 027, а затем последовательность символов. Эта последовательность указывает принтеру на изменение шрифтов, межстрочного интервала, размера шрифта ... Обратите внимание, что это относится к принтеру. Не было действительно универсального языка.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .