[ОТВЕТИТЬ]
Опции темы
05.03.2015 00:09  
qwrty40
Доброго времени суток всем!
Подскажите, плз, как менять формат шрифта (простой, полужирный, уплотненный и т.д.) при печати рекламы в чеке... Должны, как я понимаю, принтеру перед строкой передаваться некие управляющие символы. Где можно это посмотреть?
 
05.03.2015 07:29  
OlegON
Принтер-то какой?
 
05.03.2015 08:55  
Mtirt
Из "Общие правила работы и написания скриптов"
Цитата:
Класс printer – класс по работе с принтерами
константы: receipt – печать чека
journal – печать контрольной ленты
slip – подкладная печать
write - функция печати на принтере(string Text)
command_init – функция возвращает команду на инициализацию печатающего устройства
command_node - функция возвращает команду на инициализацию той или иной станции печатающего устройства
command_eject - функция возвращает команду на промотку бумаги
command_cut - функция возвращает команду на отрезку чека ()
command_double_weight - функция возвращает команду двойной ширины текста
command_single_weight - функция возвращает команду одинарной ширины текста ()

command_bar_code – функция возвращает команду на печать штрих кода EAN13
command_normal_color - функция возвращает команду нормального цвета текста ()
command_alter_color - функция возвращает команду альтернативного цвета текста ()

get_width – функция возвращает количество символов помещаемое в строке при печати на данном принтере
 
"Спасибо" Mtirt от:
06.03.2015 01:49  
qwrty40
Стандартный фискальник - СП101ФР-К...
 
06.03.2015 10:08  
vdm
А у кого и на каком фискальнике это работает?
СП101, УКМ v49 - никакой реакции на все эти command_double_weight.
 
18.03.2015 02:22  
qwrty40
Цитата:
Сообщение от vdm
А у кого и на каком фискальнике это работает?
СП101, УКМ v49 - никакой реакции на все эти command_double_weight.
У меня реакция есть... В виде "произошла ошибка attempt to call method 'command_double_width' (a nil value)".
Пытался его дернуть как
Код:
local double;
double = printer:command_double_width();
Описания не нашел, вставил по примеру
Код:
local wight;
wight = printer:get_wight();
 
18.03.2015 02:31  
qwrty40
Цитата:
Сообщение от vdm
А у кого и на каком фискальнике это работает?
СП101, УКМ v49 - никакой реакции на все эти command_double_weight.
Цитата:
Сообщение от qwrty40
У меня реакция есть... В виде "произошла ошибка attempt to call method 'command_double_width' (a nil value)".
Пытался его дернуть как
Код:
local double;
double = printer:command_double_width();
Описания не нашел, вставил по примеру
Код:
local wight;
wight = printer:get_wight();
Да, УКМ 47 СП4.
 
18.03.2015 15:17  
vdm
Ну не double_width, а double_weight.
И скорее всего описание printer в документации устарело.
Есть commands.lua где эти команды описаны как константы hw_command_*
Т.е. теоретически нужно использовать hw_command_double_weight.
И например в report_ext.lua - report_ext_returns_document() они используются. Только безрезультатно.
 
19.03.2015 06:52  
qwrty40
Цитата:
Сообщение от vdm
Ну не double_width, а double_weight.
И скорее всего описание printer в документации устарело.
Есть commands.lua где эти команды описаны как константы hw_command_*
Т.е. теоретически нужно использовать hw_command_double_weight.
И например в report_ext.lua - report_ext_returns_document() они используются. Только безрезультатно.
Опечатка здесь, однако... Ессно, weight... В скрипте-то правильно написано...
Код:
    local printer = ukm.get_printer(ukm.printer_type_master());
    if printer then
        local text = "";
        local width = printer:get_width();
--        local double = printer:command_double_weight(printer);
--        local single = printer:command_single_weight(printer);
Пробовал и как сейчас написано, и без параметра... Ошибка одинаковая... Да и с переменными тоже что-то не то, причем проблему отметили еще пару лет назад...
 
 
Опции темы



Часовой пояс GMT +3, время: 07:04.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.