2010-03-11 2 views
0

Я использую принтер с точечной матрицей и должен выполнять непрерывную работу по печати.Непрерывная печать с использованием C#

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

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

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

Я кодирую с помощью C#, но я думаю, библиотека Net не подходит для этого.

Любые предложения?

ответ

1

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

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

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

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

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

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

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

2

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

  1. содержимого записи в файл (с помощью принтера управляющих последовательностями, при необходимости, писать FF (форма подачи), где страница должна закончиться, вы должны иметь corrent размер страницы установлен на принтере)
  2. оболочки Exec «скопировать file.txt lpt1:»
+1

Спасибо за ответ. Но мой принтер использует порт usb;) Я смог сделать правильные настройки и теперь могу печатать из текстового файла в среде Windows. Но я должен печатать из кода. Я попытался отправить тот же текстовый файл на принтер из кода, но после первой страницы заголовок принтера продолжается там, где он остался. Как я могу отправить команду formfeed из кода. Или есть способ рассказать код использовать форму, которую я создал в Windows. – fkucuk

+1

Принтер с точечной матрицей на порте USB - это немного смутило меня. – harpo

-1

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

1.Write содержимого в файл (с помощью принтера управляющих последовательностями, при необходимости, писать FF (форма подачи), где страница должна закончиться, вы должны иметь corrent размер страницы, установленный на принтере) 2.shell Exec «копия file.txt lpt1:»

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

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