|
|
|
| Здравствуйте.
Нуждаюсь в помощи. Создаю программу для обменников валюты на php. Застрял на следующей задаче. Результаты сделок и прочее необходимо печатать на матричном принтере на рулонную бумагу (столько строк, сколько есть в печатаемой странице и не более, чтобы далее можно было отрывать часть бумаги, вместо того, чтобы тратить целый лист a4 на сделку, информация о которой помещаются на одной строке )
Как реализовать данную задачу на php? Полезны будут любые ссылки мнения и т.д. | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 14:58)
| | Управление печатью происходит за счет ESC-последовательностей (команд), описание которых можно найти в сети. А что на РНР то, надо понимать вы локальное приложение делаете? | |
|
|
|
|
|
|
|
для: sim5
(21.12.2010 в 15:12)
| | Именно. Далее будет развитие и домен, для управления всеми пунктами обмена. | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:24)
| | Какой банк? | |
|
|
|
|
|
|
|
для: Trianon
(21.12.2010 в 15:31)
| | Я пишу из Эстонии, город Нарва, к банкам данный обменник отношения не имеет. | |
|
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:24)
| | А более подходящего языка, чем РНР для этого нет? Если вы будете печатать из под браузера, то о полном контроле над печатью можете забыть. | |
|
|
|
|
|
|
|
для: sim5
(21.12.2010 в 15:35)
| | Мой срок решения задачи до НГ. Программирую только на PHP, изучать новое нету времени. А если генерировать pdf и печатать уже его из файла? | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:39)
| | Проще генерировать обычный текст и его печатать. | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:39)
| | pdf оперирует страницами.
Вы же хотите от страниц отойти в сторону непрерывного потока строк. | |
|
|
|
|
|
|
|
для: Trianon
(21.12.2010 в 15:42)
| | А где необходимо давать эти escape команды для печати? | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:49)
| | В поток печати они выдаются, только "нигде", а "когда" необходимы, и которые необходимы. | |
|
|
|
|
|
|
|
для: sim5
(21.12.2010 в 16:10)
| | Я имел ввиду другое. Ситуация: нажимаю кнопку "печать", исполняется файл print.php? Именно в этом файле должно быть формирование документа для печати с использованием ESC команд? | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 16:13)
| | Кнопку чего? Запускаете свое приложение, чего оно там у вас делает мне не ведомо, но когда вы отдаете документ на печать, вместе с данными печати вы должны отправлять и команды на принтер, те которые необходимы, например, закончить печать.
Принтеры расширяют последоватнельности команд, например в инструкциях к матричным Epson были всегда описаны такие команды как-то установку шрифтов и их стилей, формат документа и его границы и т.п. и т.д. Что вам конкретно надо, и надо будет ли, я сказать не могу. | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(21.12.2010 в 15:49)
| | В потоке данных принтеру.
Обычно этим занимается драйвер принтера, к слову сказать.. | |
|
|
|
|
|
|
|
для: Trianon
(21.12.2010 в 23:56)
| | Почти нашёл решение. Оно начиналось с подключения php_printer.dll из PECL 5.2.6 и использования printer_write(). Копаю глубоко пока что в эту сторону. Закончу и протестрирую - отпишусь. Может у кого-то есть мнения/опыт в процессе создания решения? | |
|
|
|
|
|
|
|
для: Борис Гаврилов
(22.12.2010 в 14:33)
| | Я надеюсь матричный принтер у вас есть? Чтобы протестить
Задача на редкость неординарная, побольше бы таких на форуме, было бы интересно. | |
|
|
|
|
|
|
|
для: nikita2206
(22.12.2010 в 22:57)
| | Принтер матричный есть. Пока на нём не тестировал. Но на обычном принтере printer_write() выводит на печать всё чётко.
P.S Пришлось делать откат php на версию 5.2.12, т.к. PECL 5.2.6 php_printer.dll видимо не совместим с 5.3.x. | |
|
|
|