
Мне бы хотелось использовать полужирную версию шрифта Libertine.
По умолчанию я использую эльзевирские цифры, и, без проблем, я могу использовать эльзевирские цифры полужирным шрифтом.
В некоторых случаях мне приходилось использовать полужирный шрифт для подстрочных цифр.
Однако цифры, которые должны быть выделены полужирным шрифтом, на самом деле набраны обычным шрифтом.
Вот MWE:
\documentclass{article}
\RequirePackage[oldstyle,proportional]{libertine}
\DeclareRobustCommand\textsb[1]{{\libertineSB#1}}
\begin{document}
\LARGE
\noindent
Some "default" text with old style nums : 1234567890\\
\textsb{Some semi-bold text with old style nums : 1234567890}\\
\textbf{Some bold text with old style nums : 1234567890}\\
\noindent
Some text with lining nums : \liningnums{1234567890}\\
\textsb{Some semi-bold text with lining nums : \liningnums{1234567890}}\\
\textbf{Some bold text with lining nums : \liningnums{1234567890}}\\
\end{document}
Знаете ли вы, как решить эту проблему?
Спасибо.
решение1
Работает с pdflatex
, но не с (Lua|Xe)LaTeX из-за ошибки, libertine.sty
которая сбрасывает семейство шрифтов вместо добавления требуемых функций при выполнении \liningnums
.
\documentclass{article}
\usepackage{iftex}
\usepackage[oldstyle,proportional]{libertine}
\DeclareTextFontCommand\textsb{\libertineSB}
\iftutex % XeLaTeX or LuaLaTeX
\RenewDocumentCommand{\liningnums}{m}{%
{\addfontfeatures{Numbers=Lining}#1}%
}
\fi
\begin{document}
\noindent
Some "default" text with old style nums: 1234567890\\
\textsb{Some semi-bold text with old style nums: 1234567890}\\
\textbf{Some bold text with old style nums: 1234567890}
\noindent
Some text with lining nums: \liningnums{1234567890}\\
\textsb{Some semi-bold text with lining nums: \liningnums{1234567890}}\\
\textbf{Some bold text with lining nums: \liningnums{1234567890}}
\end{document}