Во-первых, минимальный рабочий пример выглядит следующим образом:
\documentclass{article}
\usepackage{amsmath,amsfonts,amssymb,mathrsfs}
\usepackage{mathspec}
\setallmainfonts(Digits,Latin){Times}%a replacement of the font that I am using now
\title{Test}
\begin{document}
\maketitle
$a'+b=c^\prime$ and $(f),[f],\{f\}$.
\end{document}
И его выход xelatex
равен
Итак, мои вопросы:
- Штрихи на картинке, созданные кодами
'
и\prime
оба изComputer Modern
шрифта по умолчанию. Тогда как изменить'
и\prime
в символы вTimes
шрифте настройки? Надеюсь, глобальная настройка, а не локальная.- Пробел по обе стороны курсива
f
в математическом режиме настолько мал, что скобки иf
находятся слишком близко. Тогда как добавить пробел по обе стороны курсиваf
только в математическом режиме (но не в текстовом режиме)? Надеюсь, что это глобальная настройка, но не локальная тоже.
Вопрос 2 был решен следующим образом, а кто может мне помочь с вопросом 1?
решение1
Вам следует использовать "f
(и аналогично для других букв), как указано в руководстве по mathspec
.
Обратите внимание, что '
это то же самое, что и ^{\prime}
.
\documentclass{article}
\usepackage{amsmath,amsfonts,amssymb,mathrsfs}
\usepackage{mathspec}
\setallmainfonts(Digits,Latin){Times}%a replacement of the font that I am using now
\title{Test}
\begin{document}
\maketitle
$a'+b="f^\prime$ and $("f),["f],\{"f\}$.
\end{document}
решение2
На вопрос 2 я получаю ответ, который исходит отсвязьс помощью @egreg. Я публикую ответ здесь:
\makeatletter
\AtBeginDocument{%
\Umathcharnumdef\math@f\Umathcodenum`f
\mathcode`f=\string"8000}
\begingroup\lccode`~=`f
\lowercase{\endgroup
\def~{%
\mkern3mu\math@f
\ifnum\mathgroup=\m@ne
\expandafter\@firstofone
\else
\expandafter\@gobble
\fi
{\@ifnextchar_{\relax}{\mkern3mu}}%
}
}
\makeatother
И вот результат пересмотра: