Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Этикеточный принтер [D7, XP]


Slay64 ©   (2010-08-16 15:50:00) 

Всем привет! Подскажите, как правильно послать набор управляющих символов (печать ярлыков со штрихкодом) на этикеточный принтер.
Использую пример из хелпа с процедурой AssignPrn на этикетке печатается текст набора моих команд.
мой исходник:
var
 MyFile: TextFile;
begin
 AssignPrn(MyFile);
 Rewrite(MyFile);
 Writeln(MyFile,PChar('^XA^FO100,100^BY3^BCN,100,Y,N,N^FD123456^FS^XZ'));
 System.CloseFile(MyFile);


Petr V. Abramov   (2010-08-16 18:36:00) [1]


> Сергей М. ©   (16.08.10 16:56) [11]

марка-модель принтера не озвучены, поэтому расскажу как у меня.
печатать данные в графическом представлении умеет, но со скоростью какого-нить трехкопеечного епсона. А через команды умеет работать так: один раззагружает шаблон со всей графикой и прочими "константными" текстами. В шаблоне могут быть переменные, примерно как в sql-запросе. потом значения переменных только в путь передавай принтеру (ессно, его спецкомандами) и будет печатать так, что будешь не успевать ленту на руку наматывать.
шаблоны делаются просто: есть штатная программа, с интерфейсом типа qreport, по нажатию на волшебную кнопку генерит по нарисованному принтерный скрипт, который потом используй по своему усмотрению, что видимо, и пытается вседать автор.


Slay64   (2010-08-16 16:57:00) [2]

Ладно, всем спасибо - завтра разберусь, а сейчас домой пора...


Сергей М.   (2010-08-16 16:56:00) [3]

Не верю что более-менее приличный современный лейбл-принтер не умеет принимать, обрабатывать и печатать данные в графическом представлении.


Slay64   (2010-08-16 16:55:00) [4]


> MBo ©   (16.08.10 16:52) [9]
>
> Какой интерфейс у принтера?

LPT


MBo   (2010-08-16 16:52:00) [5]

Какой интерфейс у принтера?
Я к тому, что для послед. порта (RS-232), например, с помощью PortMon можно перехватить вывод от штатной программы, и понять, как в действительности формируются команды.


Slay64   (2010-08-16 16:26:00) [6]


> Вполне вероятно, что подстроки с крыжиками ^ - на самом
> деле непечатные управляющие символы с кодами меньше 32 (^B
> = Char(2) = #2).
> В таком случае их нужно вынести из кавычек
> ^X'A'^F'O100' и т.д.

управляющая команда как раз и состоит например из ^XA - это начало формата этикетки...
если убрать в кавычки один символ из команды он печатает его как текст...


MBo   (2010-08-16 16:23:00) [7]

Пардон, [4] пост не видел.


MBo   (2010-08-16 16:18:00) [8]

Вполне вероятно, что подстроки с крыжиками ^ - на самом деле непечатные управляющие символы с кодами меньше 32 (^B = Char(2) = #2).
В таком случае их нужно вынести из кавычек
^X'A'^F'O100' и т.д.


Сергей М.   (2010-08-16 16:12:00) [9]


> Slay64 ©   (16.08.10 16:04) [3]


> мне необходимо формировать программно свои этикетки, так
> как информация на этикетках у каждой будет отличаться по
> некоторым параметрам


Ну и формируй себе их на здоровье программно, никто же не возражает ..
Но зачем для этого лезть в дебри упр.секвенций ?
На то есть виз.дизайнеры/генераторы отчетов, начиная со встроенных в Делфи QuickReport и RaveReport ..


Юрий Зотов   (2010-08-16 16:09:00) [10]

Попробуйте так:
Writeln(MyFile,
^X'A'^F'O100,100'^B'Y3'^B'CN,100,Y,N,N'^F'D123456'^F'S'^X'Z');


Slay64   (2010-08-16 16:04:00) [11]


> Сергей М. ©   (16.08.10 15:55) [1]
>
> Довольно странно что для доступу к ф-циям лейбл-принтера
> понадобилось лезть в дебри упр.симв.секвенций.
> Разве разработчик принтера не предоставляет штаный драйвер,
>  позволяющий прикладному ПО общаться с лейбл-принтером подобно
> любому иному принтеру ?

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


12   (2010-08-16 16:03:00) [12]


> Сергей М. ©   (16.08.10 15:55) [1]

они насмерть кривые, дрова эти
ZBZ2B, например, - пока пол инета не выкачал, толком не нашел..

думается, автор не верно коды прочитал/понял


Сергей М.   (2010-08-16 15:55:00) [13]

Довольно странно что для доступу к ф-циям лейбл-принтера понадобилось лезть в дебри упр.симв.секвенций.
Разве разработчик принтера не предоставляет штаный драйвер, позволяющий прикладному ПО общаться с лейбл-принтером подобно любому иному принтеру ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо