Определите, какой резервный шрифт используется LibreOffice (для Garamond)

Когда я вхожу в Garamond в качестве шрифта в Libreoffice, я получаю хороший шрифт, которого нет в списке установленных шрифтов. На самом деле, поскольку Garamond является платным шрифтом, тот, который отображается на экране, является запасным шрифтом. Я хотел бы знать, как определить, какой шрифт используется в качестве резервного в Ubuntu / Libreoffice. Я также хотел бы найти. Файл ttf этого шрифта

Я хотел бы знать, кстати, какие шрифты изначально поддерживают все Unicodes из латинских расширенных символов. Используемая система

:

  • Ubuntu 18.04
  • Libreoffice 6.0.7.3

На изображении ниже вы можете видеть, что Гарамонд распознается и отображается в первом абзаце. Но на самом деле это запасной шрифт.

garamond problem font comparison LibreOffice

Замечания - то, что я уже пробовал

Этот вопрос уже задавался несколько раз, но все ответы являются общими и не дают удовлетворительного ответа.

  • archlinux wiki - «Гарамонд № 8» не тот, который я вижу.
  • Libre Writer распознает шрифт «Garamond» ... - Я протестировал EB-Garamont и FreeSerif, как было предложено, но это все еще не тот шрифт, который я ищу. И я не хочу устанавливать запасной шрифт в Сервис> Параметры> Шрифты.
  • Откат шрифта OpenOffice (не LibreOffice) Я попробовал то, что написано безуспешно.
  • Я на самом деле смотрю на файл .ttf непосредственно в Linux. Я пробовал с fc-list , fc-list | grep "garamond" и прямым исследованием каталогов и файлов конфигурации, таких как cat fonts.alias | grep "mo" , cd / usr / share / fonts безуспешно. Это понятно, так как я на самом деле не ищу настоящий файл garamond.ttf, а ищу его резервный шрифт.
  • Я искал файлы конфигурации резервного шрифта. Я не смог найти файл VCL.xcu (который предназначен для OpenOffice, а не LibreOffice). fonts.alias не предоставляет информацию, которую я ищу.
  • Как найти шрифт в Ubuntu Было полезно, но файл fonts.conf не предоставляет нужную мне информацию.
  • Libre Office показывает Garamond, но менеджер шрифтов этого не делает Очень похожий вопрос, но два ответа не имеют отношения к моей проблеме.

edit 1

Вот что предложено @Rinzwind:

 ❮ onyr ★  kenzae❯ ❮ aedoras❯❯ unzip -p garamond_pure.odt styles.xml | xmllint --format - | grep "font-face style:name" | sort -u
I/O error : Permission denied
I/O error : Permission denied
    <style:font-face style:name="Garamond" svg:font-family="Garamond" style:font-family-generic="roman"/>
    <style:font-face style:name="Liberation Sans" svg:font-family="'Liberation Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/>
    <style:font-face style:name="Liberation Serif" svg:font-family="'Liberation Serif'" style:font-family-generic="roman" style:font-pitch="variable"/>
    <style:font-face style:name="Lohit Devanagari1" svg:font-family="'Lohit Devanagari'"/>
    <style:font-face style:name="Lohit Devanagari" svg:font-family="'Lohit Devanagari'" style:font-family-generic="system" style:font-pitch="variable"/>
    <style:font-face style:name="Noto Sans CJK SC" svg:font-family="'Noto Sans CJK SC'" style:font-family-generic="system" style:font-pitch="variable"/>

Он возвращает список шрифтов, используемых в документе .odt. Тем не менее, шрифт, который я хочу, по-прежнему написан "Garamond", даже если мне нужен его запасной вариант. Я собираюсь попробовать другую часть ответа.

Для второго метода:

Определение таблицы шрифтов по умолчанию для вашего языка требует изменения файла officecfg / registry / data / org / openoffice / VCL .xcu в исходном коде. Отдельный файл VCL.xcu не может быть найден в установленном продукте. Его содержимое объединено в /share/registry/main.xcd (где находится каталог, в котором установлен LibreOffice).

Я не знаю, что делать с officecfg. Я не могу найти каталог / registry, в котором установлен мой LibreOffice. Что мне делать?

 ❮ onyr ★  kenzae❯ ❮ share❯❯ ls -alt
total 12
drwxr-xr-x 6 root root 4096 sept. 28  2019 ..
drwxr-xr-x 2 root root 4096 sept. 28  2019 config
drwxr-xr-x 3 root root 4096 juil. 25  2018 .
0
задан 8 July 2020 в 18:02

2 ответа

You can use fc-match to get the name of the fallback font. Run the command in a terminal with the name of a font you want to use. If the font does not exist, it will return the name of the fallback font. For example:

$ fc-match Garamond
NotoSerif-osf.ttf: "Noto Serif" "Regular"
1
ответ дан 30 July 2020 в 22:11

Что касается конкретно вашего документа:

Ваш документ представляет собой ZIP-файл, который можно распаковать, а используемые шрифты находятся в styles.xml .

unzip -p {file} styles.xml | xmllint --format - | grep "font-face style:name" | sort -u

перечислит используемые шрифты. Для прямого форматирования вы также можете использовать content.xml вместо styles.xml .

Что касается универсального метода ...

Libreoffice также использует VCL.xcu . Из их вики :

Определить шрифты по умолчанию для локали.

LibreOffice позволяет определить, какие шрифты должны использоваться по умолчанию для каждой локали. Здесь мы можем определить, например, какой шрифт будет использоваться LibreOffice Writer по умолчанию при использовании вашего собственного языка или скрипта, или какой шрифт будет использоваться пользовательским интерфейсом для вашей локализованной версии LibreOffice.

Определение Таблица шрифтов по умолчанию для вашего языка требует изменения файла officecfg / registry / data / org / openoffice / VCL.xcu в исходном коде. Отдельный файл VCL.xcu не может быть найден в установленном продукте. Его содержимое объединено в /share/registry/main.xcd (где - каталог, в котором установлен LibreOffice).

VCL.xcu делится на блоки (называемые узлами), по одному на каждый язык. Первая строка узла для языка включает в себя стандартный код ISO для языка. Здесь необходимо рассмотреть два разных случая.

...

Таблица резервных шрифтов, устанавливающая отношения между шрифтами, определена в файла officecfg / registry / data / org / openoffice / VCL.xcu .

1
ответ дан 30 July 2020 в 22:11

Другие вопросы по тегам:

Похожие вопросы: