`eulervm` и смелые теоремы

`eulervm` и смелые теоремы

Я использую concrete-romanкак у КнутаКонкретная математикакак мой основной шрифт. Однако он не поставляется с математическим шрифтом, поэтому я включаю eulervmего.

\usepackage{amsmath,amssymb,amsthm}
\usepackage{concrete}% the concrete-roman, used in concrete mathetics
\usepackage{eulervm}% the math fonts used in concrete mathematics

Все шло хорошо, пока я не попытался сделать свои теоремы более смелыми. А именно, вместо

Теорема 4.1. 1+1 = 2

Я хочу

Теорема 4.1.1+1 = 2.

Для этого я добавил следующую команду в копирование заголовков из Как сделать необязательное название теоремы жирным шрифтом с помощью amsthm?

\newtheoremstyle{mystyle}%                % Name
  {}%                                     % Space above
  {}%                                     % Space below
  {}%                                     % Body font
  {}%                                     % Indent amount
  {\bfseries}%                            % Theorem head font
  {.}%                                    % Punctuation after theorem head
  {.5em}%                                    % Space after theorem head, ' ', or \newline
  {\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}%                                     % Theorem head spec (can be left empty, meaning `normal')
\theoremstyle{mystyle}
\numberwithin{equation}{subsection}
\newtheorem{theorem}[equation]{Theorem}

Это не работает.

Если я уберу eulervm, то теоремы станут жирными. Однако шрифты вернутся к некоторым значениям по умолчанию..

Вопрос

Как мне остаться в стране concrete+eulervmшрифтов с жирным шрифтом теорем?


возможно, связано

Это указано вСмелая математика в eulervmкоторый eulervmобрабатывает жирные шрифты по-другому. Но они рассматривали только жирные математические шрифты..


Минимальный пример

Ниже приведен минимальный пример, который компилируется с помощью $ pdflatex. Вы можете переключиться eulervm, чтобы увидеть эффекты, описанные в моем вопросе. Обратите внимание, что это mystyleдействительно работает: отключение \theoremstyle{mystyle}изменяет шрифт тела на курсив (по умолчанию).

\documentclass[15pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb,amsthm}
\usepackage{concrete}% the concrete-roman, used in concrete mathetics
\usepackage{eulervm}% the math fonts used in concrete mathematics

\newtheoremstyle{mystyle}%                % Name
  {}%                                     % Space above
  {}%                                     % Space below
  {}%                                     % Body font
  {}%                                     % Indent amount
  {\bfseries}%                            % Theorem head font
  {.}%                                    % Punctuation after theorem head
  {.5em}%                                    % Space after theorem head, ' ', or \newline
  {\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}%                                     % Theorem head spec (can be left empty, meaning `normal')
\theoremstyle{mystyle}
\newtheorem{theorem}[equation]{Theorem}

\begin{document}
\begin{theorem}
  The sum of $1$ and $1$ is $2$.
\end{theorem}
\end{document}

решение1

Немного покопавшись в файлах описания шрифтов, я нашел причину, по которой не работали жирные замены. Concrete не идет в жирном начертании, а пакет шрифта объявляет замену только для серии /bx/nи формы в T1кодировке. По умолчанию вы пытались /b/nиспользовать OT1.

Поэтому вы можете заменить команду

\usepackage{concrete}

с

\usepackage[T1]{fontenc}
\usepackage{ccfonts}
\renewcommand\bfdefault{bx}

Я бы рекомендовал вам использовать unicode-mathLuaLaTeX, где это возможно, и устаревшие 8-битные шрифты, когда это необходимо. См.этот ответдля нескольких более длинных примеров.

Поскольку вы определяете свой собственный стиль теоремы, вы можете вместо этого выбрать шрифт по своему усмотрению для ее заголовков, например, здесь Latin Modern Sans-Serif Semi-bold Condensed:

\documentclass[15pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} % The default since 2018
\usepackage{amsmath,amssymb,amsthm}
\usepackage{bm}
\usepackage{ccfonts}% the concrete-roman, used in concrete mathetics
\usepackage{eulervm,eucal,eufrak}% the math fonts used in concrete mathematics

\renewcommand\bfdefault{bx}

\newtheoremstyle{mystyle}%                % Name
  {}%                                     % Space above
  {}%                                     % Space below
  {}%                                     % Body font
  {}%                                     % Indent amount
  {\usefont{T1}{lmss}{sbc}{n}}%           % Theorem head font
  {.}%                                    % Punctuation after theorem head
  {.5em}%                                 % Space after theorem head, ' ', or \newline
  {\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}%                                     % Theorem head spec (can be left empty, meaning `normal')
\theoremstyle{mystyle}
\newtheorem{theorem}[equation]{Theorem}

\begin{document}
\begin{theorem}
  The sum of $1$ and $1$ is $2$.
\end{theorem}
\end{document}

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