HowTo Шрифты лучше, чем в Windows

Модераторы: broom, aim

Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

HowTo Шрифты лучше, чем в Windows

Сообщение Poor Fred » 07.11.2005 13:46

HowTo Шрифты лучше, чем в Windows

Оригинал здесь
Перевод: Poor Fred.

Время от времени я вижу сообщения от пользователей, жалующихся на то, что их шрифты выглядят уродливо и желающих знать, как их можно улучшить. Часто люди ищут шрифты со сглаживанием как в Apple/OSX.

Мне тоже не нравилось, что шрифты выглядят расплывчато и хотелось напрячь глаза, чтобы изображение выглядело более четко. Поэтому надо было что-то предпринять, чтобы шрифты выглядели в точности как в Windows.

Любой может подтвердить, что включение сглаживания шрифтов в Linux дает довольно-таки паршивые результаты. Но эта ситуация может быть изменена кардинально, что я и пытался показать здесь. Эти снимки экрана призваны показать несколько вещей:

* хорошо отрисованные несглаженные шрифты;
* слаженность KDE- и GTK2-приложений
* читаемые терминальные шрифты
* четкие и хорошо отрисованные шрифты во всех браузерах.

Итак, мой "HowTo Шрифты лучше, чем в Windows ". Надеюсь, он кому-нибудь поможет.

Первым делом несколько предупреждений:

1. Некоторые действия, которые я посоветую, могут вступить в противоречие с законом той местности, где вы живете. Также потребуется установка шрифтов, на которые, я надеюсь, вы имеете права, т.к. заплатили за них, покупая Windows или компьютер с предустановленным Windows.
2. Перекомпиляция freetype2 может повлечь за собой некоторые нежелательные эффекты, как то:
a. падение менеджера шрифтов в KDE 3.2.x (не замечено в KDE 3.3.1);
b. изменение метода сглаживания шрифтов в Fluxbox. На Blackbox не будет оказано никакого эффекта, т.к. он не использует сглаживание вообще. Вероятно, это легко поправимо, но с тех пор, как я не использую его, мне все равно;
c. возможно, изменение сглаживания шрифтов может плохо подействовать на KDE/Gnome. Это довольно-таки маловероятно, но я это упоминаю, так как об этом говорят, например, в ньюсгруппах SuSE;

3. Я не проверял это на всех дистрибутивах. Мои снимки сделаны на Slackware-current, использующем Xorg, KDE 3.3.1, Gnome 2.6, freetype 2.1.9, ядро 2.4.27. Ранее я выполнял это на SuSE 8.2, slackware 9.1, slackware 8.1 и попробую на Debian. Я слышал, что "byte code interpreter" уже активизирован в Debian, так что я не думаю, что будет какая-нибудь разница.

Ну ладно, достаточно лирических отступлений.

Шаг 1: Выбор размера монитора.

Обычно размер выбирается в зависимости от монитора/видеокарты и Ваших личных предпочтений. У меня 19-дюймовый ViewSonic, которых хорошо показывает при размере 1280x1024 @ 75hz. 17-дюймовые мониторы обычно имеют размер 1024x768. Отредактируйте Ваш XF86Config или xorg.config для задания желаемого размера и частоты развертки Вашего монитора (если не знаете как - man xorg.conf). Пока не обращайте внимания на слишком мелкие шрифты, над ними мы поработаем позже, при задании dpi.

Шаг 2: Что делает Windows?
Windows делает три вещи, которые мы хотим заставить делать Linux: 1. Использовать хорошее качество отображения шрифтов. 2. Использовать подходящее dpi (dots per inch - точек на дюйм). 3. BYTE_CODE_INTERPRETER.

1. Получение шрифтов TrueType

Некоторые дистрибутивы, такие как SuSE, имеют небольшие скрипты для загрузки пакета Windows Core Font. Если Вы владелец CD с Windows, на нем есть программы позволяющие извлечь файлы шрифтов из архивов .cab. Если Вы используете двойную загрузку как я, примонтируйте раздел с Windows и скопируйте папку со шрифтами в Вашу домашнюю директорию. Это необязательно, но необходимо, если Вы планируете удалить раздел с Windows.

Теперь мы должны добавить шрифты TrueType в Linux. Обычно в Linux шрифты располагаются в /usr/X11R6/lib/X11/fonts. Быстрый взгляд на xorg/XF86Config сообщит Вам следующее:

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

# FontPath "/usr/X11R6/lib/X11/fonts/local"
# FontPath "/usr/X11R6/lib/X11/fonts/CID"
# FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/misc"
FontPath "/usr/X11R6/lib/X11/fonts/TTF"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
FontPath "/opt/kde/share/fonts"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath "/usr/local/share/fonts"
FontPath "/usr/X11R6/lib/X11/fonts"
FontPath "/usr/local/share/fonts/TTF" #<-- строка создана менеджером шрифтов KDE
FontPath "/usr/share/fonts"
FontPath "/usr/share/fonts/default"


В моем случае шрифты TrueType находятся в каталоге TTF. В Вашем они могут находиться в каталоге fonts или создайте сами каталог TTF. Вы можете также добавить каталог ~/fonts, если не хотите, чтобы шрифты распространялись на всю систему, но я обычно устанавливаю их для всей системы. Если Вы не создавали новый каталог для шрифтов, убедитесь, что добавили строку FontPath, чтобы указать, где X могут их найти.

Простейший путь установить новые шрифты - использовать менеджер шрифтов KDE в Центре управления в разделе "Системные установки". Перейдите в администраторский режим (для установки шрифтов для всей системы) и щелкните на директорию TTF в дереве каталогов. Щелкните "Добавить шрифты" в панели инструментов. Укажите на каталог со шрифтами Windows и выберите все шрифты, которые желаете добавить: Arial, Comic Sans MS, Courier New, Tahoma, Times New Roman и Verdana как минимум. Конечно, Вы можете добавить, все, которые хотите. Если Вы используете этот путь, шрифты будут установлены в каталог /usr/local/share/fonts/TTF и путь к нему будет создан в xorg.conf как в листинге выше. Мы сделали это в первую очередь, так как перекомпиляция freetype2 может нарушить работу мереджера шрифтов KDE - это все всемя случалось у меня в KDE 3.2.x.

Во время правки xorg.conf убедитесь, что 100dpi-шрифты находятся выше 75dpi-шрифтов.

2. DPI - точек на дюйм

Window использует по умолчанию 96 dpi. Linux - 75 или 81. Вот почему шрифты в Linux всегда такие маленькие по сравнению с теми же самыми шрифтами в Windows при одинаковом размере экрана и шрифтов. В зависимости от Вашей ситуации мы должны сделать следующие шаги, чтобы заставить Linux работать при 96 dpi.
a) Если Вы сначала загружаетесь в консоль (runlevel 3) и используете startx для запуска Х-ов, отредактируйте скрипт /usr/X11/bin/startx. В зависимости от дистрибутива, это может быть символьная ссылка.

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

userclientrc=$HOME/.xinitrc
userserverrc=$HOME/.xserverrc
sysclientrc=/usr/X11R6/lib/X11/xinit/xinitrc
sysserverrc=/usr/X11R6/lib/X11/xinit/xserverrc
defaultclient=/usr/X11R6/bin/xterm
defaultserver=/usr/X11R6/bin/X
defaultclientargs=""
defaultserverargs="-dpi 96" #<--- обратите внимание
clientargs=""
serverargs=""


Просто добавьте "-dpi 96" к строке defaultserverargs= и все. Теперь, каждый раз, как Вы запускаете startx, Вы будете загружаться с разрешением 96x96 dpi, что можно проверить командой в терминале после того, как Х-ы запустятся:

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

xdpyinfo | grep resolution


B) Если Вы автоматически стартуете X-Window через KDM или GDM, Вам нужно отредактировать xorg.conf or XF86Config. Это немного посложнее. Мы должны использовать переменную DisplaySize и она будет разная для каждого размера экрана. Я использую 1280x1024:

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

# **********************************************************************
# Monitor section
# **********************************************************************

# Any number of monitor sections may be present

Section "Monitor"

Identifier "My Monitor"

# HorizSync is in kHz unless units are specified.
# HorizSync may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

HorizSync 31 - 86

# HorizSync 30-64 # multisync
# HorizSync 31.5, 35.2 # multiple fixed sync frequencies
# HorizSync 15-25, 30-50 # multiple ranges of sync frequencies

# VertRefresh is in Hz unless units are specified.
# VertRefresh may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

VertRefresh 50-180
Option "dpms"
DisplaySize 337.5 270.0  #<--- обратите внимание
EndSection


Опция DisplaySize 337.5 270.0 заставляет X-Window загрузиться с разрешением 96x96 dpi при размере экрана 1280x1024. Переменная задается

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

DisplaySize X Y


где

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

X = ширина_экрана_в_пикселях * 25.4 / желаемый_dpi
Y = высота_экрана_в_пикселях * 25.4 / желаемый_dpi


c) Если Вы используете Gnome, то даже если мы выполнили предыдущие шаги, этого недостаточно. Идем в Gnome/Desktop Prefs/Fonts/Details и изменяем опцию DPI вверху страницы на 96. Если даже Вы не используете Gnome, но применяете демон gnome-setting для переноса оформления из Gnome в KDE, или просто используете приложения из Gnome, такие, как evolution, Вам необходимо выполнить это действие, т.к. они могут привнести настройки dpi в KDE и сделать отображение шрифтов неустойчивым.

ОК, мы имеем TrueType шрифты и (или) dpi установлено на 96x96. Теперь нам нужно

3. Перекомпилировать Freetype2 для задействования интерпретатора байт-кодов

Загрузите исходные тексты с http://www.freetype.org/.

Возможно это не особая проблема, но я всегда стараюсь устанавливать версию ту же, что стоит в системе. Например, до недавнего времени в Слаке стояла версия 2.1.8 и хотя уже вышла 2.1.9 я тем не менее перекомпилировал именно 2.1.8. Мне кажется, чем меньше переменных, тем меньше проблем. Загружаем и распаковываем архив (я всегда компилирую в /tmp) и читаем README.

Это TRUETYPE readme из пакета исходников freetype2:

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

How to enable the TrueType native hinter if you need it
--------------------------------------------------------
Бла-бла-бла, тут неинтересно (прим. переводчика)
--------------------------------------------------------

- откройте файл "include/freetype/config/ftoption.h"

- найдите строку:

#undef TT_CONFIG_OPTION_BYTECODE_INTERPRETER

- замените на:

#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER

Лучше и не объяснишь.

Прежде чем компилировать и устанавливать вероятно Вы захотите удалить ранее установленный пакет. Я видел, это советуют в других документах, но я не вижу в этом особой необходимости. Библиотека freetype в Slackware находится в составе пакетов X-Window и не может быть удалена одна.

Еще одна вещь, которую нам надо сделать перед установкой - проверить символические ссылки.

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

steve@peggyo:~$ cd /usr/lib
steve@peggyo:/usr/lib$ ls -la libfreetype*
-rw-r--r-- 1 root root 2431914 2004-11-11 00:28 libfreetype.a
-rwxr-xr-x 1 root root 816 2004-11-11 00:28 libfreetype.la*
lrwxrwxrwx 1 root root 20 2004-11-11 00:28 libfreetype.so -> libfreetype.so.6.3.7*
lrwxrwxrwx 1 root root 20 2004-11-11 00:28 libfreetype.so.6 -> libfreetype.so.6.3.7*
-rwxr-xr-x 1 root root 415008 2004-06-05 17:48 libfreetype.so.6.3.5* (<-старая)
-rwxr-xr-x 1 root root 1521734 2004-11-11 00:28 libfreetype.so.6.3.7*
steve@peggyo:/usr/lib$


Это полезно, если Вы будете обновлять библиотеки и хотите проверить, что линки указывают на новые. А также, если планируете удалить старые библиотеки перед компиляцией новых и хотите убедиться, что новые линки были созданы. Если нет, то листинг старых укажет Вам, что делать.

Убедитесь, что новые пакеты с исходными текстами установлены, так что Вы можете начать компиляцию.

Итак, начнем...

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

./configure --prefix=/usr


Я использую этот префикс для Slackware, Вам он может не понадобиться. Если libfreetype находится в /usr/lib, то все в порядке. Прочтите ./configure --help чтобы узнать установки по умолчанию.



Побежали строчки. Сообщения типа "blah blah violates strict antialiasing rules yada yada" можете игнорировать.

Зарегистрируйтесь root'ом:

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

su -
make install


Будучи root'ом запустите

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

ldconfig

Если Вы в KDE, запустите Панель управления и разделе Внешний вид/Шрифты оставьте сглаживание шрифтов, но исключите диапазон от 0.0pt до 14.0 или 15.0pt. Замените все шрифты на Arial или Verdana размером 9 или 10 pt и перезапустите X-Window.

Вы должны увидеть огромную разницу, как шрифты отрисовываются без сглаживания (при этом размере).

Шаг 3: Приложения GTK2 (Gimp Tool Kit) в KDE

Приложения типа Mozilla, Gnumeric, Gaim, Abiword, Blufish, Pan являются приложениями GTK2. При использовании их в KDE они не будут следовать установкам шрифтов и размеров, которые Вы установили, пока Вы не создадите скрытый файл в Вашей домашней директории.

Создайте текстовый файл, назовите его .gtkrc-2.0 и добавьте в него следующую строку:

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

gtk-font-name = "Verdana 9"


или другой шрифт, который Вы выбрали в KDE.

Это все. Надеюсь, я ничего не забыл.

Другие ссылки по теме:

http://convexhull.com/mandrake_fonts.html
http://avi.alkalay.net/linux/docs/font-howto/Font.html


Добавлено 29-03-06
Если вы используете KDM, то можно задать плотность пикселей и не высчитывая вручную геометрию экрана. Для этого редактируем файл kdmrc (в Gentoo он находится в /usr/kde/3.5/share/config/kdm/, в вашем дистрибутиве смотрите размещение KDE). Находим следующую секцию:

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

[X-:*-Core]
AllowNullPasswd=true
AllowShutdown=All
NoPassEnable=false
NoPassUsers=
ServerArgsLocal=-nolisten tcp -dpi 96 #<-- обратите внимание.
ServerCmd=/usr/bin/X -br

Это особенно полезно будет на "живых" CD, если вы собираете свой или "затачиваете под себя" чужой - ведь вы же не знаете, на каком мониторе с каким разрешением вы будете его запускать.
Я не использую XDM, GDM и Entrance, но наверняка и в их конфигах есть подобная строка.
Убить всех человеков!
Спасибо сказали:

Лис
Сообщения: 1639
ОС: Zenwalk

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Лис » 07.11.2005 15:37

На всякий случай добавлю: при установке последней версии freetype2 (2.1.10)

в файле ./include/freetype/config/ftoption.h нужно не заменить строку

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

 #undef TT_CONFIG_OPTION_BYTECODE_INTERPRETER

на

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

#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER

а просто разкомментировать последнюю.

При установке на Suse 9.3 я, как и автор статьи, не сносил старую версию программы, а ставил новую поверх. У меня также все прошло без проблем.
Спасибо сказали:

Аватара пользователя
Angel_13th
Сообщения: 1164
Статус: ...-oo=ll=oo-...
ОС: Gentoo

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Angel_13th » 07.11.2005 16:51

Я тоже внесу свои 5 копеек, в Gentoo делать манипуляции с файлом /include/freetype/config/ftoption.h не нужно, все они выполняються на стадии сборки пакета. Соответсвенно в генту надо только подправить xorg.conf.
WorkStation Ubuntu 10.10 on Fujitsu-Siemens Amilo Pro 3545
Спасибо сказали:

Аватара пользователя
agent-mega
Сообщения: 505
Статус: Автономный модуль

Re: HowTo Шрифты лучше, чем в Windows

Сообщение agent-mega » 07.11.2005 17:35

Если Вы в KDE, запустите Панель управления и разделе Внешний вид/Шрифты оставьте сглаживание шрифтов, но исключите диапазон от 0.0pt до 14.0 или 15.0pt. Замените все шрифты на Arial или Verdana размером 9 или 10 pt и перезапустите X-Window.

Я так понимаю, таким способом отключается сглаживание для выбранного диапазона размеров?
DEBIAN & DEBIAN-BASED ONLY

Всё относительно. Объективности не существует.
Спасибо сказали:

Лис
Сообщения: 1639
ОС: Zenwalk

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Лис » 07.11.2005 22:43

Именно. Кстати, шрифты с использованием антиалайзинга после коррекции FreType2 тоже выглядят лучше, как мне показалось.
Спасибо сказали:

завшкаф
Сообщения: 61

Re: HowTo Шрифты лучше, чем в Windows

Сообщение завшкаф » 22.11.2005 17:17

На всякий случай добавлю: при установке последней версии freetype2 (2.1.10)

в файле ./include/freetype/config/ftoption.h нужно не заменить строку


В include-файлах символ '#' - это не комментарий, а начало директивы компилятора. #undef говорит компилятору, что идентефикатор не будет определен (компилятор потом будет компилировать код по разному, в зависимости от того, определен этот идентификатор или нет). Ее замена на #define определяет этот идентификатор и компилятор будет компилить код по-другому.
Спасибо сказали:

Vadim165
Сообщения: 168
ОС: XP, Vista, Mandriva

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Vadim165 » 12.01.2006 10:30

Кстати, а какие шрифты использует Windows для Меню, Иконок, Меню Пуск и Своих программ (раз уж тема так называется)? )))
Спасибо сказали:

Аватара пользователя
Angel_13th
Сообщения: 1164
Статус: ...-oo=ll=oo-...
ОС: Gentoo

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Angel_13th » 12.01.2006 11:59

Tahoma и Veranda.
WorkStation Ubuntu 10.10 on Fujitsu-Siemens Amilo Pro 3545
Спасибо сказали:

Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Poor Fred » 12.01.2006 11:59

Vadim165 писал(а):
12.01.2006 10:30
Кстати, а какие шрифты использует Windows


Какой Винь? Их много. В 9х и НТ4 был какой-то растровый вроде. С 2к - Tahoma. А вообще - какой сам поставишь.
Убить всех человеков!
Спасибо сказали:

Vadim165
Сообщения: 168
ОС: XP, Vista, Mandriva

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Vadim165 » 12.01.2006 13:54

Спасибо, теперь как-то привычнее для глаз.

Можно заставить нормально отображать шрифты OpenOffice 2.0??? а то там после проделанных изменений все осталось как раньше...
Спасибо сказали:

Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Poor Fred » 12.01.2006 14:06

Vadim165 писал(а):
12.01.2006 13:54
Можно заставить нормально отображать шрифты OpenOffice 2.0??? а то там после проделанных изменений все осталось как раньше...


Финт с .gtkrc-2.0 делал? А еще в установках есть галочка "Использовать стандартный шрифт". Попробуй ее снять - меню станет более читаемым.
Убить всех человеков!
Спасибо сказали:

Vadim165
Сообщения: 168
ОС: XP, Vista, Mandriva

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Vadim165 » 12.01.2006 14:27

Poor Fred писал(а):
12.01.2006 14:06
Vadim165 писал(а):
12.01.2006 13:54

Можно заставить нормально отображать шрифты OpenOffice 2.0??? а то там после проделанных изменений все осталось как раньше...


Финт с .gtkrc-2.0 делал? А еще в установках есть галочка "Использовать стандартный шрифт". Попробуй ее снять - меню станет более читаемым.


Да делал, во всех приложениях все ОК, кроме ОО.
Спасибо сказали:

Аватара пользователя
TuLiss
Сообщения: 1611
Статус: 01100
ОС: Gentoo,Ubuntu,MacOS X

Re: HowTo Шрифты лучше, чем в Windows

Сообщение TuLiss » 03.04.2006 00:17

теперь как я понимаю можно добваить

Option "UseEdidDpi" "FALSE"
Option "DPI" "96 x 96"
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Спасибо сказали:

Аватара пользователя
boombick
Сообщения: 516
Статус: Anonymous
ОС: ArchLinux 0.8 Voodoo

Re: HowTo Шрифты лучше, чем в Windows

Сообщение boombick » 09.04.2006 18:19

завшкаф писал(а):
22.11.2005 17:17
На всякий случай добавлю: при установке последней версии freetype2 (2.1.10)

в файле ./include/freetype/config/ftoption.h нужно не заменить строку


В include-файлах символ '#' - это не комментарий, а начало директивы компилятора. #undef говорит компилятору, что идентефикатор не будет определен (компилятор потом будет компилировать код по разному, в зависимости от того, определен этот идентификатор или нет). Ее замена на #define определяет этот идентификатор и компилятор будет компилить код по-другому.

В данном случае строка именно закомментирована

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

/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
Спасибо сказали:

Аватара пользователя
Александр
Сообщения: 945
Статус: Пользователь Debian
ОС: Debian 'Etch'

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Александр » 16.06.2006 18:07

Во всех приложениях шрифты номарльные, кроме как в ООо2.0.2. После обновления freetype до 2.2 там шрифты стали более жирными и немного размазанными, если писать шрифтом Times New Roman (из винды), даже размер букв кое-где скачет. Как можно вылечить это? Неужели ООо такой особый, что ему пофиг на другие настройки системы и он сам по себе?
HP 530 Core2Duo T2400 950GMA 1GB RAM 120 HDD
KDE 3.5.7 kernel 2.6.25 X.org 7.4
Спасибо сказали:

Аватара пользователя
Александр
Сообщения: 945
Статус: Пользователь Debian
ОС: Debian 'Etch'

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Александр » 18.06.2006 14:17

Порылся в багтраке Дебиана - у народа тоже проблемы после обновления libfreetype2 до версии 2.2. При этом попробовал нагло заменить новую библиотеку старой простым копированием файла - стало нормально отображаться в офисе, но система вылетает :) . Выходит, вся бага именно в этой библиотеке. Проблема отката в том, что новые кеды требуют именно новую версию библиотеки, со старой не запускаются нормально. Нарыл даже патч на libfreetype 2.2, котоый фиксит эту багу именно с офисом. При этом в ближайшем релизе офиса вроде как обещают исправить. Патч не пробовал, времени не было, да и в принципе офис на лето не нужен, но кому-то может поможет (да и freetype легко собирается).
HP 530 Core2Duo T2400 950GMA 1GB RAM 120 HDD
KDE 3.5.7 kernel 2.6.25 X.org 7.4
Спасибо сказали:

Аватара пользователя
Юрий
Сообщения: 10

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Юрий » 29.06.2006 17:47

есть кокой либо способ узнать задействован в бинарнике freetype "TT_CONFIG_OPTION_BYTECODE_INTERPRETER" или нет??. Я слышал, что в некоторых дистрибутивах он уже установлен.
Спасибо сказали:

Аватара пользователя
Александр
Сообщения: 945
Статус: Пользователь Debian
ОС: Debian 'Etch'

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Александр » 29.06.2006 18:39

(Юрий @ Jun 29 2006, в 17:47) писал(а):Я слышал, что в некоторых дистрибутивах он уже установлен.

В Дебиане например, причем полностью включен.
HP 530 Core2Duo T2400 950GMA 1GB RAM 120 HDD
KDE 3.5.7 kernel 2.6.25 X.org 7.4
Спасибо сказали:

neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: HowTo Шрифты лучше, чем в Windows

Сообщение neuralNetwork » 29.06.2006 20:33

Юрий писал(а):
29.06.2006 17:47
есть кокой либо способ узнать задействован в бинарнике freetype "TT_CONFIG_OPTION_BYTECODE_INTERPRETER" или нет??. Я слышал, что в некоторых дистрибутивах он уже установлен.
Можно попробовать заглянуть в заголовочный файл /usr/include/freetype2/freetype/config на предмет наличия строки

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

#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
Теоретически, должно соответствовать...
Спасибо сказали:

Аватара пользователя
Crazy
Сообщения: 862
Статус: Адепт Дзен.
ОС: Mint, Win7.

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Crazy » 13.07.2006 11:09

Кстати в Mandriva 2006 есть аплет drakfont, который сам импортирует шрифты из Windows

Desipere in loco
Спасибо сказали:

DrStas
Сообщения: 35
ОС: Mandriva Linux 2007 Free

Re: HowTo Шрифты лучше, чем в Windows

Сообщение DrStas » 04.11.2006 04:11

Вот я нашел что один чувак как-то решил проблему шрифтов в ОО, он пишет
I dont know how/why, but this has solved my problem:

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Только вот я не понял, что это за

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

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Это скрипт какой-то что ли?
Спасибо сказали:

MinerForTruth
Сообщения: 30
ОС: Debian testing

Re: HowTo Шрифты лучше, чем в Windows

Сообщение MinerForTruth » 04.11.2006 08:25

DrStas писал(а):
04.11.2006 04:11
Вот я нашел что один чувак как-то решил проблему шрифтов в ОО, он пишет
I dont know how/why, but this has solved my problem:

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Только вот я не понял, что это за

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

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Это скрипт какой-то что ли?

Это присвоение значения переменной окружения.
Спасибо сказали:

Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: HowTo Шрифты лучше, чем в Windows

Сообщение eduard_pustobaev » 04.11.2006 15:19

DrStas писал(а):
04.11.2006 04:11
Вот я нашел что один чувак как-то решил проблему шрифтов в ОО, он пишет
I dont know how/why, but this has solved my problem:

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Только вот я не понял, что это за

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

LD_PRELOAD="/usr/local/src/freetype-2.1.10/objs/.libs/libfreetype.so" soffice

Это скрипт какой-то что ли?


Это для того, чтобы Ooo использовал для отрисовки шрифтов не /usr(/local)/lib(lib64)/libfreetype.so, а конкретно скомпиленый в /usr/local/src/freetype-2.1.10/ freetype. То есть независимо от остальных приложений, и без необходимости трогать установленный в системе freetype.
В дисгармонии со вселенной.
Спасибо сказали:

Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Snupt » 04.11.2006 23:55

Что касается freetype2, то тут ещё почитайте на вскидку - http://linuxforum.ru/index.php?s=&show...st&p=266355
Спасибо сказали:

DrStas
Сообщения: 35
ОС: Mandriva Linux 2007 Free

Re: HowTo Шрифты лучше, чем в Windows

Сообщение DrStas » 05.11.2006 16:42

(eduard_pustobaev @ Nov 4 2006, в 15:19) писал(а):Это для того, чтобы Ooo использовал для отрисовки шрифтов не /usr(/local)/lib(lib64)/libfreetype.so, а конкретно скомпиленый в /usr/local/src/freetype-2.1.10/ freetype. То есть независимо от остальных приложений, и без необходимости трогать установленный в системе freetype.

А кстати, говорят, что вот эта старая версия freetype с ОО работает нормально, то есть, можно в другое место в системе скомпилировать и установить паралельно еще и другую версию freetype и именно для OO указать на нее? А ссылки при установке в систему второго движка не покривятся?
Спасибо сказали:

N1ght1ngale
Сообщения: 40
ОС: Gentoo Linux 2007.0

Re: HowTo Шрифты лучше, чем в Windows

Сообщение N1ght1ngale » 06.11.2006 00:18

Поставил фритайп2.2.1, получилось как на скрине. Очень нравится :)
Gentoo 2006.1 x86, kernel-2.6.17-gentoo-r8, Gnome 2.16.1
Спасибо сказали:

Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: HowTo Шрифты лучше, чем в Windows

Сообщение Snupt » 06.11.2006 10:49

(Signate @ Nov 5 2006, в 22:10) писал(а):Что ты ссылку то эту кидаешь? решения проблемы то там нету

А его вообше нету. Вернее решение проблемы это откат на версию fretype2 ниже чем 2.2.1.
Спасибо сказали:

DrStas
Сообщения: 35
ОС: Mandriva Linux 2007 Free

Re: HowTo Шрифты лучше, чем в Windows

Сообщение DrStas » 06.11.2006 19:48

Короче, рапортую, что нашел для себя решение проблемы со шрифтами в ОО (по крайней мере, в том, что касается версий 2.0.3 и, вероятно, 2.0.2).
Оно заключается в следующем (eduard_pustobaev навел на мысль).
Если у Вас уже установлена в системе библиотека freetype версии 2.2.х, и Вы не хотите ее сносить, не нужно этого делать, несмотря на то, что ОО, видимо, не умеет правильно с нею работать, как минимум, в некоторых его сборках/версиях. Зато нормально работает с 2.1.х!!!
Что делаем:
1. Скачиваем исходные тексты фритайпа версии 2.1.х.
2. Распаковываем тарболл.
3. Откройте файл "include/freetype/config/ftoption.h" и раскомментируйте в нем одну из строк, из которой должно получиться

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

#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER

4. Переходим в папку распакованной библиотеки и даем соманду ./configure --prefix=... (тут необходимо выбрать префикс такой, чтобы файлы lbfreetype.so* установились, не переписав файлы новой версии фритайпа, проще говоря, устанавливать надо в другой каталог, нежели уже установленные библиотеки).
В моем случае, я сделал ./configure --prefix=/usr/OldFreeType
5. Командуем make
6. Переходим под рута:
su
password:
7. Командуем make install
Это мы установили вторую копию фритайпа. Теперь нужно скормить ее нашему непокорному ОО.
8. Находим файл с названием soffice (вероятно, это /usr/lib/<OOO_DIR>/program/soffice), открываем его в любом редакторе, запущенном из-под рута (иначе не даст сохранить изменения). Первой незакомментированной строчкой добавляем строку, заставляющую ОО использовать установленную нами старую библиотеку, в моем случае

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

LD_PRELOAD=/usr/OldFreeType/lib/libfreetype.so
export LD_PRELOAD
,
и сохраняем изменения, после чего, вероятно, нужно этот скрипт запустить (я делал так).
9. Делаем доступными для ОО TTF шрифты MS - копируем Вашу коллекцию TTF шрифтов Microsoft в директорию шрифтов ОО.
Теперь настраиваем в самом ОО
10. Открываем любое приложение ОО, идем в меню сервис-Параметры-OpenOffice.org-Вид и приводим к нужному виду флажки "Сглаживание экранных шрифтов" - флажок должен стоять, но указываем "с 16 (или как хотите - смотря какие размеры шрифтов и масштабы Вы используете) пикселей" и "Использовать системный шрифт для интерфейса" - флажок должен быть снят.
11. Переходим на вкладку Шрифты, активируем таблицу замен и в ней указываем заменять Andale Sans UI (если в ниспадающем списке этого шрифта нет, то вбиваем вручную ;) ) на какой-нибудь TTF шрифт, например, Arial, жмем на галочку и ставим флажки "Всегда" и "Экран".
Вот и все :yahoo:
Спасибо сказали:

Аватара пользователя
dangerous3
Сообщения: 137
Статус: Let me google for you?
ОС: Ubuntu 10.04.3, openSuse 11.4

Re: HowTo Шрифты лучше, чем в Windows

Сообщение dangerous3 » 19.01.2007 11:56

bash-scripting@conference.jabber.ru - jabber-конференция для участников проекта bash-scripting.ru
http://sivkaburka.blogspot.com/
Спасибо сказали:

James Joyce
Сообщения: 11
ОС: SLED 10, SuSE 10.0

Re: HowTo Шрифты лучше, чем в Windows

Сообщение James Joyce » 20.01.2007 16:11

я бы еще добавил что, если не использовать менеджер шрифтов КДЕ, то после создания /usr/X11R6/lib/X11/fonts/TTF, копирования туда вручную шрифтов нужно еще зайти в эту папку и выполнить в ней

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

mkfontdir


о чем в принципе пишется в логах иксов
Спасибо сказали: