Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » UNIX » Закладки »

Модерирует : ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ищу программу для управления шрифтами. Из функционала требуется, чтобы шрифты не устанавливались в систему, а активировались из программы, после чего можно было снова их отключить чтобы не нагружать систему лишними шрифтами.
 
На Windows 7 я пользовался Font Expert. Конкретно на CentOS 7 ничего не нашел. Для Linux нашел упоминания про такие приложения как:
Font Manager
Fontmatrix
и еще парочку. Но последние упоминания о них чуть ли не в 90-е годы )) Ссылки на официальные сайты приводят к несуществующим сайтам. Видимо уже свернулись.
 
Вопрос: Чем пользуетесь, когда нужно работать со шрифтами, чтобы можно было их удобно просматривать, временно устанавливать и отключать?

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 22:31 26-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Все еще жду ответа. Дизайном кто-то на Linux занимается? Кто как решает вопрос со шрифтами? А именно: как сделать так, чтобы в системе были только те шрифты, что по умолчанию, но при желании можно было установить из папки и отключить, после окончании работ.
Помогите пожалуйста.  
CentOS 7
Gnome 3

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 19:56 27-10-2015 | Исправлено: Alinalessio, 19:57 27-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio> Все еще жду ответа.
 
Под’ем ветки не поможет; зайдите в перечень веток подфорума и посмотрите, относительно чего вы подымаете — она и так была вторая по счету. Помочь бы могло, например, обращение в как раз для таких вопросов предназначенную ветку «Программы под ГНУ/Линукс», на которую тут кое-кто подписан, а не в пустую, которую разве что случайно кто прочтет (как я сейчас).
 
> Для Linux нашел упоминания про...
 
А не то ищете — Linux® не касается тех шрифтов, о которых вы ведете речь, он вообще с графикой не связан. Это все намного дальше от железа, FreeType, если конкретнее.
 


А теперь по существу.
 
> чтобы шрифты не устанавливались в систему, а активировались из программы
 
Какая-то чудная формулировка. Вам нужно подгружать шрифты на пользовательском уровне? fontconfig это прекрасно умеет, какие еще вам «программы» нужны?  
 
Я не скажу сейчас за Центось, но в искоробочном Дебиане можно просто кинуть шрифты в ~/.fonts/ — и того довольно, чтоб они стали доступны процессам этого пользователя, даже $ fc-cache пускать не надо.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 20:43 27-10-2015 | Исправлено: ASE_DAG, 21:03 27-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо за совет. Пойду в другую ветку, уточнять по поводу того как работать с пользовательскими шрифтами. )

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 21:40 27-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio, во-первых, кажется, я рекомендовал другую ветку, чем «Новичок в ГНУ/Линуксе», а во-вторых — зачем это теперь? Уже здесь начали.
 
Добавлено:
Дополнительно могу сообщить, что если будет неудобно, чтоб отключать шрифты, перемещать их из ~/.fonts/, то тильду в конец добавлять бесполезно, а вот точку в начало — можно.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 22:02 27-10-2015 | Исправлено: ASE_DAG, 22:04 27-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Понял. Спасибо за $ fc-list
Нашел шрифт, который установил. Оказалось, что он был в невидимой папке. Пришлось через mc удалять.  
Получается, при необходимости в эту невидимую папку закидываем шрифты, а когда они не нужны, удаляем оттуда. В принципе не очень сложно и можно в этом случае и без программ обойтись. Вот только Программа просмотра шрифтов (она так и называется. В ней даже меню нет, чтобы посмотреть о программе или еще что-то.), так вот, эта программа не очень удобна для выбора шрифтов. Там просто буква "А" для каждого шрифта. Конечно можно нажать на эту букву и тогда откроется описание шрифта с написанием предложения, но может найдется программа для просмотра шрифтов поудобнее?

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 22:26 27-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio, удобство для каждого свое. Что вам нужно-то? Эскизы (thumbnails) для файлов шрифтов? Чтоб пример был вместо иконки, вот так, да?
 
   
 
Это разумно, согласен. Кеды (KDE), как видите, так умеют. Странно, если Гном — нет.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 23:11 27-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В Гноме в программе просмотра шрифтов тоже есть миниатюра на каждый шрифт в виде одной буквы "А", почти как у вас на скрине. Но чтобы выбрать шрифт, этого не достаточно, желательно увидеть, как он будет выглядеть в предложении. Чтобы увидеть предложение, надо нажать на миниатюру шрифта. Но тогда придется тыкать чуть ли не на каждую миниатюру, потом выходить и так дальше. В идеале, хотелось бы получить программу, которая покажет не одну букву, а какую-то фразу или слово, при том, что не надо было бы делать лишних движений. Катишь колесико мышки и выбираешь нужный шрифт.
 
Может можно как-то адаптировать эту программу? Может миниатюра как-то генерируется? Если так, то можно по идее в настройках заменить букву "А", на Съешь этих французских булок.. или что-то еще. )) Не пробовали так?

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 11:44 28-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio> Может можно как-то адаптировать эту программу?
 
Разумеется. Она же свободная.
 
>  Если так, то можно по идее в настройках заменить букву «А», на «Съешь этих французских булок...» или что-то еще.
 
Да, вероятно, что можно даже обойтись без пересборки. Смотрите, что-то мне подсказывает, что эскизы у вас создает gnome-thumbnail-font, и хотя мана у него я что-то не нахожу, но исходный текст прозрачно намекает, что он принимает ключ --text ровно с этим смыслом.
 
Проверьте сперва, как это работает само по себе.
 
Если как надо, то подумаем, как прописывается связь между типом и генератором эскизов. Поиск по тому же пакету исходников подсказывает, что через своеобразный xdesktop-файл — gnome-font-viewer.thumbnailer.
 
По всей логике пользовательским каталогом для thumbnailer’ов будет ~/.local/share/thumbnailers/. Таким образом, копируете туда /usr/share/thumbnailers/gnome-font-viewer.thumbnailer, и правите Exec. (На случай если придется крутить еще и --size, имейте в виду, что вызов идет через командную оболочку, что значит, что если таковая умеет в арифметику $(( ... )), то ее вполне можно использовать.)
 
Нужно ли что-то приказывать после правки .thumbnailer’а (какой-нибудь кэш пересчитать), я вам сейчас сходу не сказу — попробуйте узнать это сами.
 
> Не пробовали так?
 
Я не пользуюсь Гномом. И уж тем более, мне не настолько интересны шрифты. С чего бы мне это пробовать?

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 23:24 28-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
К сожалению я не понял что нужно сделать с gnome-thumbnail-font и ключом --text.
Буду признателен, если подскажете подробней. Я новичек.
 
Нашел описание просмоторщика шрифтов https://github.com/GNOME/gnome-font-viewer/blob/master/po/ru.po
 
Там есть строчки:

Код:
#: ../src/font-thumbnailer.c:189
msgid "Text to thumbnail (default: Aa)"
msgstr "Текст для миниатюры (по умолчанию: Аа)"

Насколько я понял, в каком-то конфигурационном файле есть эти строчки, которые следует просто исправить. Хотя я могу и ошибаться. Как я не искал этот файл, но так и не нашел.

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 23:00 29-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio, нет никакого конфигурационного файла. Вы же сами процитировали, перевод какой этой строчки — ровно той, на которую я вам ссылку прошлым сообщением.
 
> я не понял что нужно сделать с gnome-thumbnail-font и ключом --text
 
Ну не поняли, и перешли бы сразу к итоговому пункту — правке .thumbnailer’а, вдруг бы все заработало — с’экономили бы время. Вызвать я его предлагал:  
 
$ gnome-thumbnail-font --size 64 --text 'С’ешь еще этих мягких булок...' sample-font.ttf output # кажется, так  
 
да и посмотреть, что будет в output — может, ерунда какая.

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 09:10 30-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пока что-то не получается:

Код:
 
[root@localhost ~]# '/usr/share/thumbnailers/gnome-font-viewer.thumbnailer'  --size 64 --text 'С’ешь еще этих мягких булок...' sample-font.ttf output
-bash: /usr/share/thumbnailers/gnome-font-viewer.thumbnailer: Отказано в доступе
 

 
Добавлено:
Миниатюры шрифтов даже Nautilus показывает. Точно так же, только букву "Аа".
 
Помогите пожалуйста еще разобраться. Как добраться до строчки, где указано какие символы идут в миниатюры.

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 22:17 30-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio> [root@localhost ~]#
 
А-а-а-а!
 
> # '/usr/share/thumbnailers/gnome-font-viewer.thumbnailer'  --size 64 --text 'С’ешь еще этих мягких булок...' sample-font.ttf output
 
Я, кажется, что-то другое выше предложить машине приказать, не? Вы не находите разницы?

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 22:59 30-10-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пробовал конечно и так:

Код:
 
gnome-thumbnail-font --size 64 --text 'С’ешь еще этих мягких булок...' sample-font.ttf output  
 

Но пишет:

Код:
Произошла ошибка при открытии файла: Нет такого файла или каталога

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 23:07 30-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio, мда... Нам по всей видимости нужно через переводчика разговаривать, который бы пояснял вам, что sample-font.ttf — это очевидно некий условный файл со шрифтом для примера и его надо заменить на действительный (например, в Дебиане это достоверно мог бы быть какой-нибудь /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf, ну а вам не надо искать, где у вас шрифты из поставки — у вас же своих навалом).
 
Ладно, что-то мы затянулись, загружу сейчас этот ваш gnome-font-viewer и попробую убедиться, что я вас на правильный путь толкаю, а то мало ли.
 
А вы насчет сверхпользователя-то поняли?
 
Добавлено:
Ага. Ну чего я могу сказать — увы, не густо. Произвольный текст-то задать можно, но вот переносить его строкам (причем даже вручную) gnome-thumbnail-font не будет. Это принципиально, он использует для выводы текста напрямую Cairo, а для многострочной верстки нужен, например, Pango.
 
Это не было бы никакой проблемой, если бы эскизы также могли бы быть разносторонними, но насколько я вижу, в Гноме они строго квадратные.
 
Вот так это бы выглядело, если бы вы все-таки сделали, что я вам рекомендовал:
 
   
 
это вместо
 
   
 
Согласен, неважненько.
 
Ладно, сейчас покопаю на предмет альтернативы — ничего сложного там быть не должно. Имиджмэджик, по-моему это умеет, ну или таки Панго.
 
Добавлено:
Ну, как бы да, умеет Имиджмэджик. Для справки:
 
convert \
    -background none \
    -font "$1" \
    -size "${2}x${2}" \
    "caption:С’ешь еще этих мягких булок..." \
    "png:$3"

 
Только у него при цикле по всем установленным у меня шрифтам на одном из них (STIXIntegralsSm-Regular.otf, если интересно) память протекла; причем стремительно так — еле прибил. Есть, конечно, вероятность, что у вас и не потечет (сборка-то другая, да и шрифты тоже); но что-то мне подсказывает, что пробовать вы не захотите :-)

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 00:16 03-11-2015 | Исправлено: ASE_DAG, 00:41 03-11-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, блин! Эта Панга, конечно, штука архизанятная, но чем я в конце концов занимаюсь? Допустим даже, что не один только черт разберет, как ей подсунуть файл шрифта не из каталогов fontconfig’а (По всей видимости предусмотренным образом — никак, по крайней мере в документации про это ни слова.) Даже тогда — нафига это делать? Ведь велика ли проблема — верстка пословным переносом с выключкой по левому краю — набыдлокодить быстрее, чем в библиотеках копаться. Не, не ХеТеХ же подключать, правда? Так что держите-ка скриптик:
 

Код:
#!/usr/bin/perl
 
# Copyright © 2015 Dmitry Alexandrov
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved.  This file is offered as-is,
# without any warranty.
 
use warnings;
use utf8;
use Cairo;
use Font::FreeType;
binmode STDERR, ":utf8";
 
my $USAGE = "Usage: font-thumbnailer <font> <thumbnail-size> <output>
Generate a pangram thumbnail for a font file.
 
Intended to be used with GNOME, so <font> is a path to font file, possibly
with ‘file://’ scheme, <thumbnail-size> is a side of square in pixels,
<output> is a name of a (temporary) file to write a PNG thumbnail.";
 
my $pangrams =
  {
   en => "The juick brown fox jumps over the lazy dog.",
   ru => "С’ешь еще этих мягких французских булок, да выпей же чаю.",
  };
my $font_size_min  = 9;
my $font_size_step = 3;
my $margin_left    = 1;
my $margin_right   = 1;
my $margin_top     = 1;
my $line_height    = 1.1;
 
@ARGV == 3
  or die "$USAGE\n";
my ( $font_file, $thumb_size, $thumb_file ) = @ARGV;
$font_file =~ s,^file://,,;
-f $font_file && -r $font_file
  or die "Cannot read ‘$font_file\n";
$thumb_size > 0
  or die "$thumb_size’ is not a positive number\n";
my $canvas_width = my $canvas_height = $thumb_size;
 
my ($lang) = split '[_.]', $ENV{LANG};
my $pangram = $pangrams->{$lang} ? $pangrams->{$lang} : $pangrams->{en};
 
my $surface = Cairo::ImageSurface->create( 'argb32',
                                           $canvas_width, $canvas_height );
my $cr = Cairo::Context->create($surface);
my $ft_font_face = Font::FreeType->new->face($font_file);
my $cr_font_face = Cairo::FtFontFace->create($ft_font_face);
$cr->set_font_face($cr_font_face);
 
for (my $font_size = $font_size_min,
     my $y = 0 + $margin_top + $font_size_min ;
     $y <= $canvas_height ;
     $font_size += $font_size_step,
     $y += $line_height * $font_size)
  {
    my $x = 0 + $margin_left;
    $cr->move_to( $x, $y );
    $cr->set_font_size($font_size);
    my $space_width = $cr->text_extents(' ')->{x_advance};
    for my $word ( split ' ', $pangram )
      {
        my $word_width = $cr->text_extents($word)->{x_advance};
        if ( $canvas_width - $x - $margin_right < $word_width )
          {
            $x = $margin_left;
            $y += $line_height * $font_size;
          }
        $cr->move_to( $x, $y );
        $cr->show_text($word);
        $x += $word_width + $space_width;
      }
  }
 
$cr->fill;
$surface->write_to_png($thumb_file)
  or die "Cannot write to $thumb_file\n";

 
(Вся циферь с абсолютного потолка, меняйте без задних мыслей, если считаете нужным.)
 
Положить (к примеру) в ~/.local/bin/font-thumbnailer, назначить бит исполняемости, убедиться, что ~/.local/bin числится в $PATH.
 
То есть, что в ~/.profile есть что-то наподобие:
 
# Set PATH so it includes user’s private local bin if it exists
if [ -d "$HOME/.local/bin" ]; then
    export PATH="$HOME/.local/bin:$PATH"
fi

 
 
Оформить ~/.local/share/thumbnailer/font.thumbnailer подобным образом:
 
[Thumbnailer Entry]
TryExec=font-thumbnailer
Exec=font-thumbnailer %u %s %o
MimeType=application/x-font-ttf;application/x-font-pcf;application/x-font-type1;application/x-font-otf;

 
И да, кэш эскизов — ~/.cache/thumbnails/ — если захотите его пересоздать по-новому, вероятно проще всего будет просто удалить целиком — не великой важности вещь.
 
Выглядеть в Наутилусе это будет как-то так:
   


----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 02:35 03-11-2015 | Исправлено: ASE_DAG, 04:40 03-11-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alinalessio, как успехи?

----------
Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 14:00 05-11-2015
Alinalessio

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ух ты! Спасибо, что так активно откликнулись. Я выпал на время, так как ремонт тянет на себя много времени, но не терпится все это уже применить. Попробую обязательно и напишу.

Всего записей: 223 | Зарегистр. 21-06-2010 | Отправлено: 14:28 06-11-2015
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Операционные системы » UNIX » Закладки »


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru