Непрерывная печать с помощью c # - PullRequest
2 голосов
/ 11 марта 2010

Я использую матричный принтер, и мне приходится постоянно печатать.

Используемая мной бумага имеет размер 213 мм x 350 мм и разделена на середину страницы.

Я что-то пробовал, и я могу напечатать первую сторону страницы, но отпечатки сдвигаются, когда дело касается второй части страницы?

Существует ли какое-либо руководство, объясняющее, как это сделать с помощью scracth, включая настройки принтера.

Я пишу на c #, но, думаю, библиотека .Net для этого не подходит.

Есть предложения?

Ответы [ 3 ]

3 голосов
/ 12 марта 2010

Возможно, выглядит немного странно, но через некоторое время мы завершили печать из Windows на матричные принтеры, используя что-то вроде этого

  1. записать содержимое в файл (при необходимости используйте экранирующие последовательности принтеров; пишите FF (подача формы) в том месте, где должна заканчиваться страница; вам нужно установить на принтере другой размер страницы)
  2. shell exec "copy file.txt lpt1:"
2 голосов
/ 22 марта 2010

Вот что я сделал:

Мой принтер был OKI 3320. Я нашел его руководство и узнал управляющие символы принтера.

Я подготовил шаблон строки, соответствующий форматированию. Включая теги для переменных, escape-последовательности «возврат каретки», «перевод строки» и «перевод строки».

Я измерил длину своих бумаг и установил длину страниц их задней печати в соответствии с ней. Таким образом, когда я отправляю команду FF принтера, он настраивает принтер на начальную точку следующей формы.

В моем приложении я взял строку, заменил токены значениями apropritate и отправил их на принтер, используя RawPrinterHelper . Поскольку RawPrinterHelper поддерживает только английские символы, мне пришлось также заменить турецкие символы.

Теперь работает нормально.

Конечно, могут быть более профессиональные подходы. Вы можете полностью контролировать свой принтер, используя escape-последовательности. Вы можете задать координаты области печати или программно установить длину страницы, что устраняет необходимость в настройке принтера. Поскольку мое приложение будет использоваться только один раз, мое решение мне подходит.

0 голосов
/ 23 сентября 2010

Возможно, выглядит немного странно, но через некоторое время мы завершили печать из Windows на матричные принтеры, используя что-то вроде этого

1.записать содержимое в файл (при необходимости используйте экранирующие последовательности принтеров; пишите FF (подача формы) в том месте, где должна заканчиваться страница; необходимо, чтобы на принтере был установлен другой размер страницы) 2.shell exec "copy file.txt lpt1:"

Может ли Nighttingale7 объяснить это дальше:

  • Сохранит ли печать, подобная этой, тип шрифта и размер шрифта файла? Если да, то как нам установить тип и размер шрифта при записи данных в файл?
...