Вопрос или проблема
Я установил шрифт Alibaba PuHuiTi 3.0
.
fc-list | grep "Alibaba PuHuiTi 3.0 55 Regular L3"
/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.otf: Alibaba PuHuiTi 3.0,阿里巴巴普惠体 3.0,Alibaba PuHuiTi 3.0 55 Regular L3,阿里巴巴普惠体 3.0 55 Regular L3:style=55 Regular L3,Regular
/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.woff2: Alibaba PuHuiTi 3.0,阿里巴巴普惠体 3.0,Alibaba PuHuiTi 3.0 55 Regular L3,阿里巴巴普惠体 3.0 55 Regular L3:style=55 Regular L3,Regular
/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.ttf: Alibaba PuHuiTi 3.0,阿里巴巴普惠体 3.0,Alibaba PuHuiTi 3.0 55 Regular L3,阿里巴巴普惠体 3.0 55 Regular L3:style=55 Regular L3,Regular
/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.woff: Alibaba PuHuiTi 3.0,阿里巴巴普惠体 3.0,Alibaba PuHuiTi 3.0 55 Regular L3,阿里巴巴普惠体 3.0 55 Regular L3:style=55 Regular L3,Regular
Отредактируйте простой файл.
vim test.tex
\documentclass[12pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Alibaba PuHuiTi 3.0 55 Regular L3}
\begin{document}
测试显示汉字简体繁體chinese
\end{document}
Скомпилируйте его:
xelatex test.tex
! Package fontspec Error: The font "Alibaba PuHuiTi 3.0 55 Regular L3" cannot
(fontspec) be found.
Попробуйте добавить абсолютный путь:
cat test.tex
\documentclass[12pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.ttf}
\begin{document}
测试显示汉字简体繁體chinese
\end{document}
Перекомпилируйте его:
xelatex test.tex
This is XeTeX, Version 3.141592653-2.6-0.999994 (TeX Live 2022/Debian) (preloaded format=xelatex)
restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2022-11-01> patch level 1
L3 programming layer <2023-01-16>
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls
Document Class: article 2022/07/02 v1.4n Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/size12.clo))
(/usr/share/texlive/texmf-dist/tex/latex/fontspec/fontspec.sty
(/usr/share/texlive/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
(/usr/share/texlive/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-xetex.def)))
(/usr/share/texlive/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty)
(/usr/share/texlive/texmf-dist/tex/latex/fontspec/fontspec.cfg)))
LaTeX Font Warning: Font shape `TU//usr/share' undefined
(Font) using `TU/lmr/m/n' instead on input line 5.
! Missing number, treated as zero.
<to be read again>
f
l.5 \begin
{document}
?
Как сделать так, чтобы xelatex нашел шрифт?
Ответ или решение
Для того чтобы использовать шрифт Alibaba PuHuiTi 3.0 55 Regular L3 в документе LaTeX с помощью XeLaTeX, необходимо убедиться, что шрифт правильно установлен и доступен для использования. Давайте рассмотрим шаги, которые помогут вам корректно настроить и использовать этот шрифт.
Шаг 1: Проверка установки шрифта
Сначала убедитесь, что шрифт установлен корректно, выполнив команду:
fc-list | grep "Alibaba PuHuiTi 3.0"
Если шрифт установлен, вы должны увидеть путь к файлам шрифта, как показано в вашем примере.
Шаг 2: Использование шрифта в документе
Убедитесь, что ваш исходный файл test.tex
правильно отформатирован. Пример минимального документа выглядит следующим образом:
\documentclass[12pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Alibaba PuHuiTi 3.0 55 Regular L3}
\begin{document}
测试显示汉字简体繁體chinese
\end{document}
Шаг 3: Компиляция документа
При компиляции файла с помощью команды:
xelatex test.tex
вы можете столкнуться с ошибкой, сообщающей, что шрифт не может быть найден. Это может происходить по нескольким причинам.
Шаг 4: Устранение ошибок
-
Проверьте наличие шрифта в системе: Убедитесь, что XeLaTeX действительно видит шрифт. Иногда требуется обновить кеш шрифтов с помощью следующей команды:
fc-cache -fv
-
Использование абсолютного пути: Если шрифт все равно не может быть найден, попробуйте использовать абсолютный путь к файлу шрифта, как вы уже делали:
\setmainfont{/usr/share/fonts/alibaba/AlibabaPuHuiTi-3-55-RegularL3/AlibabaPuHuiTi-3-55-RegularL3.ttf}
-
Проверьте формат файла: Убедитесь, что формат файла шрифта поддерживается (например, .ttf, .otf).
Шаг 5: Завершение
Если вы все сделали правильно и шрифт все еще не работает:
- Попробуйте использовать другой шрифт (для тестирования), чтобы убедиться, что проблема не связана с вашей конфигурацией XeLaTeX.
- Проверьте, нет ли прав доступа к файлам шрифтов.
С учетом всех этих шагов, вы должны быть в состоянии успешно использовать шрифт Alibaba PuHuiTi 3.0 55 Regular L3 в ваших LaTeX-документах. Если у вас есть дополнительные вопросы, не стесняйтесь уточнять!