
\documentclass[a4paper]{article}
\usepackage[no-math]{fontspec}
\usepackage{anyfontsize}
\usepackage{amsmath,amssymb,amsthm,mathrsfs}
\setmainfont{Times New Roman}
\usepackage{unicode-math}
\setmathfont{Asana-Math.otf}
\usepackage{bm}
\renewcommand{\bm}{\symbf}
\title{Title}
\author{Author}
\date{\today}
\begin{document}
\maketitle
\end{document}
Это вызывает предупреждение
Font shape `TU/Asana-Math.otf(1)/b/n' undefined
(Font) using `TU/Asana-Math.otf(1)/m/n' instead.
Но если я удалю строки
\usepackage{bm}
\renewcommand{\bm}{\symbf}
предупреждения исчезли.
Почему? Как это исправить?
решение1
Мое решение — не использовать \bm
его и напрямую заменить\mathbf
\usepackage[no-math]{fontspec}
\setmainfont{TeX Gyre Pagella}
\usepackage[scr=rsfso,frak=euler,bb=ams]{mathalpha}
\usepackage[bold-style=ISO,sans-style=italic]{unicode-math}
\setmathfont{Asana Math}
\AtBeginDocument{
\let\uglymathbf\mathbf
\renewcommand\mathbf\symbf
\let\uglymathsf\mathsf
\renewcommand\mathsf\symsf
}
решение2
Как говорится в сообщении, используемый вами шрифт не имеет жирного шрифта. \symbf
не меняет шрифты, а выбирает жирный математический алфавитный диапазон из того же шрифта. В целом, в bm
основном несовместим с unicode-math
(я пытался расширить его, но есть некоторые технические проблемы).
Конечно, в первой строке здесь нет никакого смысла.
\usepackage{bm}
\renewcommand{\bm}{\symbf}
Так как команда renew отменяет определение пакета, просто используйте
\newcommand\bm{\symbf}`
Если вы хотите создать псевдоним \symbf
, \bm
возможно, потому что вы конвертируете существующий документ pdftex с помощью bm
пакета to unicode-math
, в противном случае не используйте его \bm
вообще и используйте \symbf
в своих математических формулах.
Обратите внимание, что в вопросе говорится о псевдониме, \bm
поэтому \symbf
именно это я и показал выше, но для таких букв, как x, \bm{x}
используется полужирный математический курсив, а не полужирный вертикальный, поэтому это \symbfit
может быть лучшим выбором.