Собственно нужен совет-консультация - можно ли как-топодключить TTF шрифты чобы их было видно из GTK1 (GTK2 их отображает) - с выводом их на принтер получилось - осталось только в превью LazReport-а отобразить
p.s.
У кого есть свободное время - надо довести LazReport до ума - наладить работу со шрифтами коректно
я думаю что необходимо реализовать поддержку стилей на frMemo
а уже непосредственно в стиле хранить параметры шрифтов и проч.
также можно разделит через стиль платформенно-зависимые вещи.
у самого не хватает времени - может кто менее загружен?
Подключить, я полагаю, можно. Но только это делается на уровне не GTK, а системы целиком. В старых системах ведь TTF рисовался самими иксами, а с развитием прогресса их переключили на xft. Подключив обратно, рискуем потерять антиалиасинг...
Вообще, хотелось бы мне самому в один прекрасный день понять, как весь этот зоопарк из x, xfs, xft, pango и всего остального взаимодействует...
все не очень сложно:
1. ttf шрифты можно расположить в любой папке (н-р /usr/share/fonts/ttf)
2. командой mkfonscale (в этой папке) создать файл font.scale
3. убедиться, что в нем есть строки "фонт - кодировка" с нужной локалью, при необходимости вписать.
4. командой mkfontdir создать файл font.dir (или скопировать cp font.scale font.dir). В данном случае эти два файла должны буть идентичны.
5. создать файл encodings.dir или линк на файл, поставляемый с xfs (нужно для локалей отличных от utf)
6. прописать путь, где лежат новые ttf шрифты в конфиг. xfs
7. service xfs restart
8. все должно работать!
для использования нового ttf шрифта в gtk1, как дефолтового, его необходимо вписаить в конфиг. gtk, для нужной локали (н-р /etc/gtk/gtkrc.cp1251) или в домашней папке (файл .gtkrc)
По части утранения возни с алиасами шрифтов для каждой из кодировок, может кому будет полезна часть туториала к MSE* :
===============
Так как MSEgui внутри использует юникод, он может работать в любой национальной среде ( см. системную переменную “LANG” ), при условии, что в системе установлены шрифты с кодировкой ISO 10646-1, в которых представлены символы национального алфавита системы ( см. первую, до точки, часть значения “LANG”, у меня это “ru_RU” ). Опять-таки, проще всего этого добиться, установив те же “ttf-freefonts”.
Для подстраховки по части кодировок лучше импортировать эти шрифты из сервера шрифтов, так как этот сервер умеет на лету генерировать нужные кодировки:
* установить пакет «xfstt» ( сервер TrueType-шрифтов )
* в секцию ( /etc/X11/XF86Config-4: Files ) дописать импорт шрифтов из «xfstt» :
FontPath "unix/:7101"
* сказать серверу XFSTT , какие кодировки генерировать, для чего в /etc/init.d/xfstt , в конце секции анализа конфигурации, вписать строку :
* перезапустить «xfstt» ( /etc/init.d/xfstt restart ), а затем и все X11- сессии ( Ctrl+Alt+BackSpace в каждой из сессий )
Примечание:
использование "$userarg" - лишь один из способов ( использованый в Debian Linux ) для передачи параметров команжной строки в запускаемый сервер ( демон ) "xfstt", в другом Linux-дистрибутиве может понадобиться другой способ
параметр "--encoding" задает, шрифты в каких кодировках сгенерировать, причем каждый шрифт занимает память, поэтому будем минималистами - зададим минимально необходимый набор кодировок для отображения стандартных X11-программ ( iso8859-1 ), стандартно русифицированных программ ( koi8-r), MSEgui-программ ( iso10646-1 ) и символов вроде стрелок, курсоров и и т.п. ( symbol-0 ); кодировка "windows-1251" здесь - на случай чтения русских MSWord-файлов в среде OpenOffice/StarOffice/KWord
«xfstt» при запуске ищет TrueType-шрифты в каталоге и подкаталогах “/usr/share/fonts/truetype/*” - находит, строит кэш, генерирует кодировки и подгружает - независимо от базовой конфигурации X11.
Поэтому добавить другой комплект TTF-шрифтов просто – скопируйте, например, шрифты от MicroSoft – в каталог “/usr/share/fonts/truetype/microsoft/”, и выполните в нем команды «mkfontscale `pwd`», «mkfontdir `pwd`» и «fс-cache `pwd`» ( эти команды нужны, чтобы информация о новых шрифтах стала доступна для "X11" и "FreeType" ).
Прямая ссылка на “/usr/share/fonts/truetype/ ”( и подкаталоги ) в (/etc/X11/XF86Config-4: Files ) может быть удалена.
заодно вопрос к alexs ты вроде больше всех в лазрепорте понимаешь как там дело с баркодом ? компонент есть файлы присутствуют, а вот как его в дизайн тайме создать не пойму или это пока оставленно на рантайм ?
В винде просмотр работает нормально (и вертикальный скрол и горизорнтальный)
качал отсюда
lazreport.cvs.sourceforge.net:/cvsroot/lazreport
с баркодами ещё не смотрел - мне они не нужны просто (пока)
в линуксе насчёт скрола замечен баг - толи просмотрщика толи скробара
если я начинаю таскать за скрол-бары просмотрщик - то область прсомотра не обновляется - надо просто щёлкнуть мышкой в область просмотра - тогда она перерисуется
как я проверял:
разрешение монитора большое - поэтому чтобы лист вылез за пределы экрана я ставил масштаб в просмотрщике 200 %
ОС:
WinXP SP2
ASPLinux11