Список шрифтов linux

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

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

Ответить
ronin
постоялец
Сообщения: 174
Зарегистрирован: 26.01.2010 23:14:46

Список шрифтов linux

Сообщение ronin »

Подскажите как получить список установленных шрифтов в linux, уже всю голову сломал. Пытался использовать FontDialog, но мне надо отключить стиль шрифта, в Options компонента поставил fdNoStyleSel=true но он всё равно засранец даёт выбрать стиль шрифта, поэтому решил сделать просто ComboBox для имени шрифта и edit для размера.
Аватара пользователя
WAYFARER
энтузиаст
Сообщения: 564
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Сообщение WAYFARER »

Присоединяюсь к вопросу.
В Linux Screen.Fonts не канает
alex208210
постоялец
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51

Сообщение alex208210 »

Шрифты лежат в папке /usr/share/fonts/corefonts либо в какойто еще папке (в /usr/share/fonts/) в зависимости от тематики шрифта

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

 if FindFirst('/usr/share/fonts/corefonts/*', faAnyFile, searchResult) = 0 then
  begin
   repeat
    combobox1.Items.Add(searchResult.Name);
   until FindNext(searchResult) <> 0;
 FindClose(searchResult);


добавим шрифты в комбобокс а дальше разберетесь
Последний раз редактировалось alex208210 21.06.2011 14:41:59, всего редактировалось 3 раза.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

ronin
постоялец
Сообщения: 174
Зарегистрирован: 26.01.2010 23:14:46

Сообщение ronin »

Шрифты лежат в папке /usr/share/fonts/corefonts либо в какойто еще папке (в /usr/share/fonts/) в зависимости от тематики шрифта


в том то и дело что прийдётся в таком случае скорее всего указывать вручную папку, а хочется чтобы как в FontDialog, не париться с тем какая система у пользователя стоит и где лежат шрифты, ведь в Delphi есть компонент, а тутока нету

Mr.Smart

та же история
alex208210
постоялец
Сообщения: 207
Зарегистрирован: 12.05.2010 13:16:51

Сообщение alex208210 »

Для этого и есть findnext

в любом случае можно сделать поиск по расширению

shell(bash -c "find /usr/share/fonts/ -name *.ttf"); а вывод функции уже в комбобокс.. так вообще все шрифты добавятся.. основные находятся в corefonts

Во вложении поиск в папке и поиск всех шрифтов
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
alexsa
новенький
Сообщения: 28
Зарегистрирован: 02.06.2011 23:10:20

Сообщение alexsa »

Можно подумать в том направлении - FontDialog их как-то получает... и выводит в Memo
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Проще всего перехватить STDOUT SHELL-команд:

1) "xlsfonts" - в формате X
2) "fc-list" - в формате FONTCONFIG
ronin
постоялец
Сообщения: 174
Зарегистрирован: 26.01.2010 23:14:46

Сообщение ronin »

Проще всего перехватить STDOUT SHELL-команд:


как вариант, попробую, но пока остановился на варианте FontDialog, правда до сих пор не пойму почему на изменения Options вообще не реагирует о_О
Ответить