2009-06-18 2 views
1

Я хочу напечатать страницу по строке на принтере Dotmatrix (принтер Epson LQ-300). Это означает, что я пошлю строку текста на принтер и после перерыва я отправлю еще один , теперь обе строки должны быть на одной странице не на двух страницах.Печать строки на Java

Пожалуйста, покажите мне, как я могу это достичь.

С уважением.

ответ

2

Возможно, вам, скорее всего, потребуется библиотека связи - параллельные или последовательные порты. Существует довольно старая реализация Sun от Java 1.2 дней, но мы все еще успешно используем ее с Java 5. Интерфейсы определены в пакете javax.comm. Используйте это как отправную точку.

Как вы не предоставить больше информации о вашей ситуации, следующие несколько расплывчатым, но, надеюсь, полезно в любом случае:

Com/последовательный и параллельный порты в зависимости от платформы, требуя кусок машинного кода. Для Linux существует проект RxTx, обеспечивающий реализацию.

Затем вы просто напишете данные на порт, как только вы откроете его с соответствующими параметрами (есть перечислитель портов) в соответствии с протоколом, который понимает принтер. Для большинства принтеров Epson это стандарт ESC/P (2). Печать нескольких строк обычного текста должна быть такой же простой, как печать их на экране после завершения настройки.

+0

Если вы просто печатаете обычный текст, отправьте текст a \ r. В зависимости от внутренних настроек принтера это либо добавит перевод строки, либо нет. Если принтер не продвигает бумагу, добавьте также \ n. –

0

Если честно, я никогда не пробовал отправлять принтер сам, но я сделал некоторые поисковые запросы (не так ли?) И this tutorial выглядит многообещающим.

Теперь, в связи с последним запросом, вы просто хотите создать текстовый буфер, в который вы отправляете текст, и который может выгрузить его содержимое на принтер в более поздней точке. Пожалуйста, исправьте меня, если я упростил вашу проблему =)

Смежные вопросы