Бетонные малые колпачки CMU

Бетонные малые колпачки CMU
\documentclass{report}
\usepackage{fontspec}
\setmainfont{CMU Concrete}[
    BoldFont = CMU Concrete Bold
]

\begin{document}
\textsc{Small Caps.} \textsc{\textbf{Bold Small Caps.}
\end{document}

Как использовать малые заглавные буквы (как римские, так и жирные) в CMU Concrete? Это работает в текстовом процессоре Pages.

Пример выше работает нормально, если я не пытаюсь использовать маленькие заглавные буквы. Я попробовал оба предложения, приведенные в разделе 4.1.1 документации fontspec, но ни одно не сработало.

решение1

Пакет betonпредоставляет простой способ использования CM Concrete для всех движков (pdflatex/xelatex/lualatex), а также пакет позволяет использовать малые заглавные буквы для римского обычного начертания. Он не имеет жирных малых заглавных букв (CM Concrete вообще не имеет жирного шрифта, строчного или иного). Вы можете подделать это с помощью пакета xfakebold, который вставляет специальные команды рендеринга PDF в документ (только pdflatex и lualatex), которые делают текст жирным, но он выглядит не очень чисто, как всегда с поддельным жирным шрифтом.

Для xelatex и lualatex кодировка шрифта T1 требуется для использования CM Concrete. Для pdflatex кодировка по умолчанию также работает, однако результат поддельного жирного шрифта намного лучше с кодировкой T1. Обязательный отказ от использования поддельного жирного шрифта по-прежнему действует.

МВЭ:

\documentclass{report}
\usepackage[T1]{fontenc} % required for xelatex/lualatex, improves fake bold result for pdflatex
\usepackage{beton} % package to load CM Concrete
\usepackage[bold=0.2]{xfakebold} % pdflatex/lualatex only
\newcommand{\textscbf}[1]{%
\setBold%
\textsc{#1}%
\unsetBold%
}
\begin{document}
Normal Text

\textsc{Small Caps.} \textscbf{Bold Small Caps.}
\end{document}

Результат:

введите описание изображения здесь

Связанный контент