I'd go directly to unicode-math:
\documentclass[a4paper]{article}
\usepackage{mathtools} % loads amsmath that should go before unicode-math
\usepackage{unicode-math}
\setmainfont[Numbers=OldStyle]{Palatino Linotype}
\setsansfont{Optima}
\setmonofont{Consolas}
\setmathfont{Asana Math}
Asana Math is based on the MathPaZo fonts.
If you really need brackets and parentheses from the MathPaZo fonts, it's doable:
\DeclareSymbolFont{brackets} {OT1}{zplm}{m}{n}
\SetSymbolFont{brackets}{bold} {OT1}{zplm}{b}{n}
\DeclareSymbolFont{largebrackets} {OMX}{zplm}{m}{n}
\SetSymbolFont{largebrackets}{bold}{OMX}{zplm}{m}{n}
\DeclareMathDelimiter{(}{\mathopen} {brackets}{"28}{largebrackets}{"00}
\DeclareMathDelimiter{)}{\mathclose}{brackets}{"29}{largebrackets}{"01}
\DeclareMathDelimiter{[}{\mathopen} {brackets}{"5B}{largebrackets}{"02}
\DeclareMathDelimiter{]}{\mathclose}{brackets}{"5D}{largebrackets}{"03}
For the Knuth calligraphic font, add
\setmathfont[range={\mathcal,\mathbfcal},StylisticSet=1]{XITS Math}
For a "better" \vDash
symbol, add
\setmathfont[range=\vDash]{XITS Math}
The "not belonging to" symbol should always be specified with \notin
rather than with \not\in
.
Finally, for the AMS blackboard bold:
\DeclareSymbolFont{AMSb}{U}{msb}{m}{n}
\protected\def\mathbb#1{{\mathchar\numexpr256*\symAMSb+`#1\relax}}
You can simply remove the option math
when loading mathspec
.
MWE
\documentclass[11pt]{article}
\usepackage{mathspec}
\setprimaryfont{Linux Libertine O}
\begin{document}
1 $1$ $\mathrm{1}$ $\text{1}$
\end{document}
Output
Loading mathspec
with the math
option forces mathspec
to load fontspec
without the no-math
option.
And the fontspec
manual states:
If you find that fontspec
is incorrectly changing the maths font when it should be leaving well enough alone, apply the [no-math]
package option to manually suppress its maths font.
Best Answer
In math-mode, you can easily vertically center a picture using
\vcenter{\hbox{..}}
.