How can I get the 'real number' sign (something like \mathbb{R}
with the amssymb package in LaTeX) in XeTeX?
5 Answers
How about this?
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\begin{tabular}{ll}
Plain-\TeX{}: & ${\rm I\!R}$\\
amssymb: & $\mathbb{R}$
\end{tabular}
\end{document}
-
3Neither of these options produce a U+211D character in the output. Jul 8, 2016 at 21:20
-
@TylerCrompton You need special packages to generate Unicode characters in the output: xetex - What is the difference between unicode-math and mathspec? - TeX - LaTeX Stack Exchange Sep 13, 2021 at 15:54
You should put your symbol format definitions in another TeX file; publications tend to have their own styles, and some may use bold Roman for fields like R instead of blackboard bold. You can swap nams.tex
with aom.tex
. I know, this is more common with LaTeX, but the principle still applies.
For example:
% paper.tex
\input nams.tex
$\realnumbers$ is connected.
% nams.tex
\def\realnumbers{\mathbb{R}}
% more definitions for the Notices.
% aom.tex
\def\realnumbers{\mathbf{R}}
% more definitions for the Annals.
Just change one line in paper.tex to submit to the Annals instead of the Notices.
-
2Welcome to TeX.sx!. May be an example/illustration would help to support the answer. Mar 26, 2013 at 3:07
With lualatex
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\begin{document}
$ℝ$
\end{document}
(not sure how to make it work with XeLaTeX
or XeTeX
)
-
1
Auto-answer:
\input amssym.tex
${\Bbb R}$
\bye
works fine
-
-
@Jubobs Nope, amssym. On my computer this code snippet does the job Apr 26, 2013 at 12:46
There's a couple of ways to go about this:
- Using the default Computer Modern -font (which, as you've already found out, can be extended with the
amssym
to have access to BlackBoardBold.) - Using Unicode OpenType math fonts. Now this is a bit tricky because the glyph locations need to be (re-)told to TeX. This step can further be split into two different approaches:
- Use just one family and change the active range by re-telling TeX the glyph positions every time the style changes (i.e. script, fraktur, etc. This is the way I've understood the
unicode-math
-package does it). For plain-xetex, you could do something along these lines. - Fix the styles to their own
\fam
ilies using mapping-files created withteckit_compile
from SIL. See: Changing math font to OTF in XeTeX using plaintex-format.
- Use just one family and change the active range by re-telling TeX the glyph positions every time the style changes (i.e. script, fraktur, etc. This is the way I've understood the
\font\1="Linux Libertine O"\1 ℝ\bye
works great for me.msbm10
font with XeTeX. In any case, if you don't set fonts, you're basically using the same setting as normal TeX.