Lazreport, текст, повёрнутый на 90°, кириллические принтеры

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Lazreport, текст, повёрнутый на 90°, кириллические принтеры

Сообщение Brainenjii »

Собственно, сабж ^_^ Кнопочку вижу, а как воспользоваться - непонятно ^_^ В интернетах нашёл, что это дело реализовано, но поскольку не работает в gtk1 - отключено... Есть включившие? ^_^
И про принтеры - таковые отображаются в списке на печать знаками вопросов... Как бы поправить, не переписывая lazreport? ^_^
Последний раз редактировалось Brainenjii 04.02.2010 08:30:58, всего редактировалось 1 раз.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Brainenjii писал(а):И про принтеры - таковые отображаются в списке на печать знаками вопросов... Как бы поправить, не переписывая lazreport?

Это в винде?
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Скорее всего - глюк в функции получения имён принтера - связано с перекодировкой русских символов в UTF8 и обратно. Надо посмотреть.
Или сам глянеш?
yuray
новенький
Сообщения: 95
Зарегистрирован: 22.05.2008 14:19:19
Откуда: Ровно, Украина

Сообщение yuray »

Brainenjii писал(а):Собственно, сабж ^_^ Кнопочку вижу, а как воспользоваться - непонятно ^_^ В интернетах нашёл, что это дело реализовано, но поскольку не работает в gtk1 - отключено... Есть включившие? ^_^


Под win32 включал. Меня больше интересовал вопрос включения под gtk2. Под gtk1/2 не удалось. :(
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

*YAHOO* Подскажите, как вы это делали? ^_^
yuray
новенький
Сообщения: 95
Зарегистрирован: 22.05.2008 14:19:19
Откуда: Ровно, Украина

Сообщение yuray »

Правил LR_Class.pas. Там есть процедура OutMemo90. Если к вечеру сами не осилите, то после работы скину готовый LR_Class.pas (он у меня дома).
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

Получилось, спасибо ^_^
yuray
новенький
Сообщения: 95
Зарегистрирован: 22.05.2008 14:19:19
Откуда: Ровно, Украина

Сообщение yuray »

Brainenjii писал(а):Получилось, спасибо ^_^

Рад помочь.
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

И заодно про кириллицу в списке принтеров - файл winprinters.inc, строка 441
PDev.Name := PPRINTER_INFO_2(InfoPrt)^.pPrinterName;

После
PDev.Name := UTF8Encode(PPRINTER_INFO_2(InfoPrt)^.pPrinterName);

Всё начинает отображаться нормально... Правильней, наверное, было бы сделать Utf8ToSys, но для этого надо подключать доп. модули в uses
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Brainenjii
Ну и кинь патч команде лазаруса - чтобы включили :-)
Ответить