Печать по русски из-под Linux.

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

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

AMD
постоялец
Сообщения: 189
Зарегистрирован: 23.01.2008 21:25:25
Откуда: Кишинев

Сообщение AMD »

Lisolog писал(а):Сори, но такое впечатление что тема закрылась +)
Если можно, обрисуйте ситуацию доступнее.
Вариант:
Mandriva 2008, Лазарь 0.9.24 бета. UTF-8
Всякие TimesNewROman, Arial и тд отсутствуют.
Есть например Liberation, DejaVu...

Делаем

Код: Выделить всё

    printer.begindoc;
    printer.canvas.font.name:='Liberation Sans';
    printer.canvas.Font.CharSet:=204;
    тыры-пыры...

На выходе - краказябы +)

Заране пасиба за разжевывание для тех, кто в танке (т.е. меня)



Решил проблему с краказябами очень просто - взял и перешел на Яву 2месяца назад - и могу сказать очень удобно
Аватара пользователя
Attid
долгожитель
Сообщения: 2588
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

AMD писал(а):Решил проблему с краказябами очень просто - взял и перешел на Яву 2месяца назад - и могу сказать очень удобно

вот оно чего так тихо и спокойно стало =) . и чем интересно твой пост поможет человеку ?

Добавлено спустя 3 минуты 8 секунд:
мдя, а еще учитывая что сообщение было написано в январе, возможно даже до того как ты вообще узнал о существовании фпц это вообще блеск.
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

зачем-то меняет размер шрифта при выводе на канву принтера

Не-а, все наоборот. Прав именно Постскирпт ( а не экран монитора ), то есть именно то, что видите на бумаге. Это искажение текста в Х-ах = нестыковка/(подмена на похожие ) шрифтов как результат работы Фритайпа и Фонтконфига. Фонтконфиг вполне может взять не просто другой шрифт, а даже отдельные буквы из другого похожего шрифта. Или применить масштабирование размера. Или... У него есть конфиг с весьма странными правилами...
Ессно, фиксится 1) тщательной стыковкой и тотальным и однозначным переходом на ТруТайп-шрифты ( Тайп1-шрифты - удалить нафиг ).
AMD
постоялец
Сообщения: 189
Зарегистрирован: 23.01.2008 21:25:25
Откуда: Кишинев

Сообщение AMD »

Attid писал(а):
AMD писал(а):Решил проблему с краказябами очень просто - взял и перешел на Яву 2месяца назад - и могу сказать очень удобно

вот оно чего так тихо и спокойно стало =) . и чем интересно твой пост поможет человеку ?

Добавлено спустя 3 минуты 8 секунд:
мдя, а еще учитывая что сообщение было написано в январе, возможно даже до того как ты вообще узнал о существовании фпц это вообще блеск.


Обыдно? ;)
Реально перешел на Java всетаки возможностей море и кажется мне она легче в понимании о кроссплатформенности я уже умалчиваю
Да и проблем с локалями в основном нету, с разрешениями принтера тем более потому что все расчеты делаются в 72dpi а потом это подсчитывается под принтер и монитор исходя из возможностей данных устройств
Аватара пользователя
NXP
постоялец
Сообщения: 187
Зарегистрирован: 02.01.2008 15:11:56
Откуда: Воронеж
Контактная информация:

Сообщение NXP »

AMD писал(а):Обыдно? ;)
Реально перешел на Java все-таки возможностей море и кажется мне она легче в понимании о кроссплатформенности я уже умалчиваю

о тормознутости я уже умалчиваю :lol:

Есть еще более простое решение - пойти нефтяником, или газовщиком, на худой - чиновником. Заработаешь больше.
(Обычно об этом думают при переходе на жабу и дотнет: Понаваял, бабки в руки - и бежать)
А можно забить на программирование, и идти пить пиво :D
ps реально уходи на другой форум, не гневи людей :twisted:

pps Ни на какие явы меня не подкупишь. У меня руки растут от куда надо. :lol:
v-t-l
энтузиаст
Сообщения: 744
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Сообщение v-t-l »

debi12345 писал(а):Не-а, все наоборот. Прав именно Постскирпт ( а не экран монитора )

Речь шла не о том, что на бумаге шрифты не такие, как на экране, а что Lazreport меняет размеры, как ему заблагорассудится. При прямом выводе на Canvas принтера шрифты немного отличаются по начертанию от экранных, но размеры соответствуют заданным. LazReport же вместо 12pt может залепить 8 или 6, по крайней мере, в надписях, где встречаются нелатинские символы.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

образчик можно lrf? Я такое ещё не видел. Тем более тотже лазрепорт под виндйо печатает нормально. Если и есть ошибки, то они получаются уровнем ниже - объектом канваса.
Аватара пользователя
sash-kan
незнакомец
Сообщения: 8
Зарегистрирован: 21.05.2008 13:22:48
Откуда: Санкт-Петербург

Сообщение sash-kan »

sash-kan писал(а):по ходу разборок выяснилась опечаточка (упоминается undefline вместо underline), выливающаяся в невозможность печати подчеркнутого текста.
по этому поводу создал багрепорт. на удивление быстро его закоммитили.
следующим этапом попробую оформить багрепортом все остальное.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Подниму старую тему. Если она конечно интересна.
Последняя проблема с печатью - русские символы уменьшаются.
Спсоб лечения пока следующий:
надо просто закоментировать следующий блок:

Код: Выделить всё

        while (Canvas.TextWidth(St) > nw) and (Canvas.Font.Size>1) do
        begin
          Canvas.Font.Size := Canvas.Font.Size-1;
          {$IFDEF DebugLR}
          DebugLn('Rescal font %d',[Canvas.Font.Size]);
          {$ENDIF}
        end; 

Тут именно и происходит ресайзинг шрифта.
v-t-l
энтузиаст
Сообщения: 744
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Сообщение v-t-l »

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

Сообщение alexs »

Там надо разобраться - зачем в последних символах строки Цыганенко сохранял информацию. Надо и сам LazReport дорабатывать.
Ответить