новости книги игры
библиотека программы форум

11.05 11.10 1C 2010 2011 3d Acer action Additional Adobe alt linux ALT линукс в школу altlinux amarok AMD Android Apache apple apt-get ArchLinux asplinux ASUS Asus Eee PC ATI audio avi backup bash beta big buck bunny bind bittorrent blender bluetooth bsd c C++ Calibre Canonical cd Cedega CentOS chrome chromium cisco clamav CLI Damn Small Linux debian Dell desktop dns DOOM DOS download driver dvd e-book Eclipse emacs embedded linux enterprise EPUB Etersoft exim ext2 ext3 ext4 faq FB2 fedora fedora10 fedora8 fedora9 fedoracore firefox firefox3 firewall Flash Fluxbox flv free FreeBSD freeware ftp games gcc gentoo GIMP gnome GNU gnu linux google GPL GRUB gtk GTK+ hackday hdd HDR


   

«    Август 2008    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Что вы используете для чтения новостей LinuxOpen.RU?

Браузер
RSS feed
Почтовая рассылка



LinuxTwitter:




Архив:

Октябрь 2011 (91)
Октябрь 2010 (42)
Апрель 2010 (10)
Январь 2010 (29)
Декабрь 2009 (6)
Ноябрь 2009 (31)
Октябрь 2009 (20)
Апрель 2009 (19)
Март 2009 (1)
Февраль 2009 (20)
Январь 2009 (31)
Декабрь 2008 (71)
Ноябрь 2008 (89)
Октябрь 2008 (91)
Сентябрь 2008 (113)
Август 2008 (168)
Июль 2008 (156)
Июнь 2008 (147)
Май 2008 (191)
Апрель 2008 (213)
Март 2008 (197)
Февраль 2008 (195)
Январь 2008 (112)
Декабрь 2007 (146)
Ноябрь 2007 (94)




Партнёры:


 

Добавить в Google Reader
Читать в Yandex.Ленте
Mobile LinuxOpen (test version)

FreeBSD - шрифты как в винде! 

 Мне нравится:


 

Пересборка freetype2 и сопутствующие телодвижения...

Как известно, чтобы в иксах ОС семейства UNIX работали true-type шрифты и делали буковки жутко красивыми, помимо наличия этих самых шрифтов и правки определенных конфигурационных файлов, еще необходимо пересобрать утилиту freetype2.

Вот как раз о сборке этой самой утилиты под FreeBSD мы здесь и поговорим.

Итак, у нас установлена система FreeBSD 6.0 (актуально и для 7.0) с каталогами и папками по умолчанию, то есть ОС ставилась в стандартном режиме с максимальным числом пакетов.

Версии некоторых утилит:

gmake: GNU Make 3.81
freetype: freetype2-2.1.10_1 (У меня при установке как из пакетов так и из портов в FreeBSD 7.0 почему-то по любому ставится версия 1.3.1, хотя при установке из портов pkg_info и рапортует о том что мы имеем самую свежую версию freetype2, внутри всё та же 1.3.1, с ней все эти финты не пройдут). Так, что, по-любому, придётся качать "сырки" с оффсайта или из distfiles с любого зеркала FreeBSD. По адресу:
http://download.savannah.gnu.org/releases/freetype/ можно просмотреть полный список.

Версию gmake можно узнать по команде:


$ gmake –v

а версию freetype:

$ pkg_info | grep freetype


Итак, скачиваем архив с freetype2.

Распаковываем скачанный архив в отдельную папку (у меня это home/user/install/) и переходим в нее сначала с помощью файл-менеджера (лучший файл-менеджер это XTerm;)). В этой директории ищем файл ./include/freetype/config/ftoption.h и открываем его на редактирование. Теперь, делаем то, ради чего и затевается пересборка: ищем строку

/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */

и убираем операторы комментария (/**/), а строку сдвигаем так, чтобы символ # был в самом начале строки (не забудьте убрать знаки комментария в конце строки) . Сохраняем изменения, выходим из редактора и переходим в нашу директорию, но уже из консоли:

$ cd ~/install/freetype-2.3.7


Теперь, если мы выполним команду:

$ ./configure или $ ./configure –prefix=/usr или даже $ ./configure -help

то получим в ответ вот это:

GNU make (>= 3.79.1) or makepp (>= 1.19) is required to build FreeType2.
Please try
'GNUMAKE= ./configure'.
or >&2
'GNUMAKE="makepp --norc-substitution" ./configure'.


И вот тут Вам должно стать понятно, почему вначале я упомянул утилиту gmake!

Обратите внимание, что из сообщения выходит, будто нам требуется GNU make минимум версии 3.79.1, но ведь у нас в системе уже стоит версия 3.8… Не берите в голову, по крайней мере сейчас. В будущем, если это будет нужно, Вы во всем разберетесь. А пока…
А пока открываем наш любимый MC (или другой файл-менеджер, к примеру, Konqueror в KDE (а лучше vi или nano в терминале ;)) и переходим все в ту же директорию ~/install/freetype-2.3.7. В этой директории открываем для редактирования, как Вы думаете, какой файл? – Не заморачивайтесь, я сам скажу. Тот самый файл configure и находим в нем такие строки:

if test "x$GNUMAKE" = x; then
GNUMAKE=make
fi


меняем GNUMAKE=make на GNUMAKE=gmake (добавляем всего лишь одну букву g) сохраняем и закрываем файл.
Снова в консоли пишем:

$ ./configure -help

и… видим, что все работает! теперь командуем:

$ ./configure


(если система устанавливалась стандартно, как в нашем случае, то не нужно добавлять –prefix) и ждем пока скрипт закончит работу. Ошибок не выскочило? –Тогда идем дальше. Набираем команду:

$ gmake


именно gmake а не make, как это обычно делается.

После удачного выполнения команды gmake вводим (ессно рутом):

# gmake install


и снова почувствуйте разницу: вместо make install - gmake install

Если все обошлось без ошибок, можно считать, что freetype2 обновлен.

Если Вы находитесь в иксах, то перезапустите их и лицезрейте разницу, если конечно Вы уже подправили все конфиги и разместили в нужном месте TrueType шрифты.

О том, как править конфиги, описано в этих статьях и топиках:
http://linuxforum.ru/index.php?showtopic=12690
http://www.opennet.ru/base/X/font_as_windows.txt.html

Источник вдохновения находится здесь: http://rublzapixel.ru/articles/?art=3

От себя:

Что касается TTF шрифтов, то я всегда просто переношу все файлы *.ttf из пупочки WindowsFonts в директорию нужного юзера в пупочку .fonts, после рестарта иксов шрифты оттуда подхватываются автоматически.

Что касается конфигов, то пример файла /usr/local/etc/fonts/local.conf или ~/.fonts.conf вместе с разбором полётов можно посмотреть здесь: http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/x-fonts.html

У меня файл ~/.fonts.conf выглядит следующим образом:






14


false




14


false




fixed


mono




console


mono




mono


100




Helvetica


sans-serif




unknown


rgb




Так как он здесь запостился, работать наверняка не будет.

Должно быть так:

FreeBSD - шрифты как в винде!

Владельцы "электронных гаубиц" очевидно должны удалить последнюю секцию (естественно сохранив закрывающий тэг ) . И не забывайте о правильной табуляции внутри XML файлов!

И ещё одна вещь на которую следует обратить внимание это правильное количество точек на дюйм - DPI в разрешении вашего монитора. Для виндовых шрифтов dpi должно составлять 96.
Даём команду:
$ xdpyinfo | grep resolution
resolution: 96x96 dots per inch

Если вывод отличается от этого, нужно изменить dpi.
Я применяю способ правки скрипта startx. Всё очень просто. Открываем в текстовом редакторе от имени супер-пользователя файл: /usr/local/bin/startx и находим там секцию вида (она первая сверху):

userserverrc=$HOME/.xserverrc
sysserverrc=/usr/local/lib/X11/xinit/xserverrc
defaultclient=xterm
defaultserver=/usr/local/bin/X
defaultclientargs=""
defaultserverargs="" - вставляем в эти кавычки строку -dpi 96
clientargs=""
serverargs=""


в результате имеем:

userserverrc=$HOME/.xserverrc
sysserverrc=/usr/local/lib/X11/xinit/xserverrc
defaultclient=xterm
defaultserver=/usr/local/bin/X
defaultclientargs=""
defaultserverargs="-dpi 96"
clientargs=""
serverargs=""


Теперь рестартуем иксы и проверяем всё той же командой, теперь всё должно стать пучком ;)

Я ипользую Fluxbox. Для установки системного шрифта для GTK2 приложений я использую файл .gtkrc-2.0 в своей домашней директории, с одной единственной строкой:
gtk-font-name="Tahoma 8"


Просто подберите системный шрифт по вкусу.

Вот что получилось у меня:


FreeBSD - шрифты как в винде!

Шрифты выглядят точь в точь как в винде =)
Всем успехов!

источник статьи   


13 августа 2008  /   /   ]

Похожие статьи

  • Создание Web-сервера (Apache, Mysql, PHP) под Slackware Linux
  • Мой Linux часть 10
  • Проверяем HTTP-трафик на лету
  • Обновление PHP5
  • Настройка SSL-шифрования между Linux и Microsoft SQL сервером на сертификат ...




  • Комментировать:



    [root@linuxopen.ru ~]$ find
     ©2007 - 2011 @antropoff.ru