|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
03.02.2010, 09:52 | #1 |
Пользователь
Регистрация: 28.04.2009
Сообщений: 31
|
Заставить работать принтер
Дано -
китайский термопринтер rp-pos58ns-p Подключение через Лпт порт Требуется - Заставить принтер работать без драйверов. Подгрузить русский шрифт. ------------------------------------------- Задача очень ложная и сам я справится пока не могу, принтер поддерживает только латиницу, а нужно заставить его писать по русски, графический режим у принтера не работает без драйверов, и использовать его запрещено по заданию, драйвер также использовать нельзя. Помогите найти способ загрузить в принтер русский шрифт с помощью делфи, неделю уже бьюсь над этой задачей.
Чтобы наделать ошибок надо для начала уметь хоть что то делать!
|
03.02.2010, 10:16 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А если схитрить и печатать а-ля транслитом?
т.е. слово "привет" печатать "npNBet" ну или типа такого?
I'm learning to live...
|
03.02.2010, 10:26 | #3 |
Пользователь
Регистрация: 28.04.2009
Сообщений: 31
|
Вначале была идея писать буквы которые есть, а не хватающие дорисовать но невозможность использовать графику без дров свела результат к нулю, транслит не подойдёт заказчику нужна полноценная программа.
Чтобы наделать ошибок надо для начала уметь хоть что то делать!
|
03.02.2010, 10:38 | #4 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
интересные конечно мысли насчет без драйверов... вы когда работаете в delphi, а значит под win с LPT портом уже используете системные драйверы... если принтер не поддерживает в своем буфере русские коды символов изначально, а графический режим запрещен, то ваша задача невыполнима (за транслитерацию уже сказали).
...еще, а если попробовать вот >>> так ...еще, вы точно знаете, что ваш принтер не поддерживает русскую кодировку? доку по командам вашего принтера искали? хо-отя китайский upd ------- Цитата:
ооо, уже
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 03.02.2010 в 12:28. |
|
03.02.2010, 11:05 | #5 | |
Пользователь
Регистрация: 28.04.2009
Сообщений: 31
|
Цитата:
Выкладываю мануал.
Чтобы наделать ошибок надо для начала уметь хоть что то делать!
|
|
03.02.2010, 12:11 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Хм... Если я правильно понял мануал то у тебя для отрисовки символа есть матрица в каждой колонке которой 8 точек
Предположим нарисовать букву "А" матрица будет такая: 1234567 - Это кол-во данных 0 ___*___ 1 __*_*__ 2 _*****_ 3 *_____* | Это какие биты будут задействованы А сама команда будет выглядеть примерно так ESC *1 1 7 1 2 6 5 6 2 1 Здесь: 1 - Режим 1 7 - будет 7 колонок 1 2 6 5 6 2 1 - это цифры биты которых по вертикали засвечивают точки в каждой колонке По-моему так.
I'm learning to live...
|
03.02.2010, 12:46 | #7 | |
Пользователь
Регистрация: 28.04.2009
Сообщений: 31
|
Цитата:
Write(F,chr(27)+chr(42)+chr(1)+chr( 1)+chr(7)+chr(1)+chr(2)+chr(6)+chr( 5)+chr(6)+chr(2)+chr(1)); где 27 42 - режим 1 - 8 байт 1 - N1 колонок по горизонтали 7 - N2 колонок по горизонтали (написано в мануале, переведено со словарём) 1265621 собственно байты Но там написано что параметр N2=0 или 1! Это меня смутило не могу понять за что отвечает N2. И конечно же я попробовал вашу комбинацию. Принтер виснет т.е. не отвечает на последующие команды. У меня два варианта либо из за ошибки в синтаксисе команды либо принтер и в самом деле не работает с графикой без родных дров. Будем надеется на лучшее и ломать голову над синтаксисом. Я перепробовал уже очень много вариантов. Кто сможет изваять рабочий подарю медаль! из картонки конечно))))
Чтобы наделать ошибок надо для начала уметь хоть что то делать!
|
|
03.02.2010, 13:07 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Ну... Я когда-то на Эпсонах почти так делал, и срабатывало нормально...
Хотя у меня был на руках русский мануал...
I'm learning to live...
|
03.02.2010, 14:25 | #9 |
Пользователь
Регистрация: 28.04.2009
Сообщений: 31
|
Спасибо всем, я решил проблему, просто когда посылаешь данные принтеру они заносятся в буфер, а для того чтоб их вывести надо повторно ввести команду [27][42] (без параметров)а затем команду печати!
Чтобы наделать ошибок надо для начала уметь хоть что то делать!
|
03.02.2010, 14:28 | #10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как заставить работать CheckBox? | ridmal | Microsoft Office Word | 1 | 21.05.2009 09:47 |
Как заставить работать NFS 2 SE? | Манжосов Денис :) | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 6 | 02.11.2008 16:35 |
Заставить работать Winlogon | slm | Общие вопросы Delphi | 3 | 18.09.2008 16:47 |
Как заставить работать php? | yourself | Помощь студентам | 9 | 20.05.2008 08:08 |
Как заставить работать dll ? | Volkogriz | Общие вопросы Delphi | 10 | 13.12.2007 10:24 |