Объединение шрифтов Helvetica и Symbol с помощью mathspec

Объединение шрифтов Helvetica и Symbol с помощью mathspec

Я хочу объединить шрифты Helvetica и Symbol, чтобы Helvetica обрабатывал латинские буквы, а Symbol — греческие. Mathspec и XeLaTeX справляются с этой задачей довольно хорошо, но я не могу заставить скобки и символ процента (и, возможно, другие вещи) выглядеть правильно. Например, следующий код

\documentclass[10pt]{article}
\usepackage{mathspec}
\setmainfont{Helvetica}
\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)

\Huge This looks wrong: $L_e\,(\%)$ 
\end{document}

выдает следующий документ:

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

(Чтобы не усложнять задачу, я опустил эту \setmathsfont(Greek){Symbol}команду, так как проблема проявляется и без нее.) Как заставить XeLaTeX использовать Helvetica для скобок и символа процента, когда я нахожусь в математическом режиме?

решение1

загрузка fontspecбез математики:

\documentclass[10pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Helvetica}
\usepackage{mathastext}
%\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)

\Huge This looks wrong: $L_e\,(\%)$ 
\end{document}

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

решение2

С помощью Карлкёллера и Герберта я пришел к следующему решению:

\documentclass[10pt]{article}
\usepackage{mathspec}
\setmathsfont(Digits,Latin)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\setmathsfont(Greek)[Uppercase=Regular,Lowercase=Italic]{Symbol}
\setmainfont{Helvetica}
\usepackage[italic]{mathastext}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)

\Huge This looks wrong: $\delta_e/L_e\,(\%)$ 
\end{document}

который производит,

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

Я почти уверен, что я попробовал это еще тогда, когда karlkoeller предложил mathastext28 декабря, и столкнулся с кучей ошибок. В период с 28 декабря по 1 января я обновился с TexLive 2012 до TexLive 2013, и теперь это, похоже, работает. Пакет mathspecне обновлялся между 2012 и 2013 годами, но mathastextпакет обновлялся около 15 раз. Вероятно, одно из этих обновлений исправило ошибки, с которыми я сталкивался.

В интересах информирования других, я подумал, что также поделюсь альтернативным решением, которое, как мне кажется, мне нравится больше. Пакет XeLaTeX хорош, но он занимает почти в 3 раза больше времени, чтобы набрать короткий документ, как тот, что выше. Также я не уверен, что шрифты Symbol и Helvetica будут так же хорошо работать при наборе сложных математических формул. Вместо этого я остановился на пакете newtx, который имеет полную поддержку математики и клон Helvetica для своего шрифта sans-serif. Следующий код

\documentclass[10pt]{article}
\usepackage{newtxtext}
\renewcommand*\familydefault{\sfdefault}
\usepackage[italic]{mathastext}
\usepackage{newtxmath}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)

\Huge This looks wrong: $\delta_e/L_e\,(\%)$ 
\end{document}

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

Отличается \deltaв newtx, но общий стиль похож, и я не был женат на шрифте Symbol. Я просто не хотел компьютерные современные (CM) шрифты. (IMHO, толщина линий шрифтов CM слишком тонкая.) К сожалению, при ближайшем рассмотрении видно, что скобки newtxнемного отличаются в математическом режиме по сравнению с текстовым режимом, но я могу с этим справиться.

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