缺少字符:字体 nullfont 中没有“x”

缺少字符:字体 nullfont 中没有“x”

我想从 Tex 文件生成图像。我使用模板,然后以编程方式在其中插入 LaTeX。例如,如果我想为 创建图像x^2 + \phi,则生成的模板文件如下:

\documentclass[12pt]{minimal}
\usepackage[english]{babel}
\usepackage[intlimits]{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{wasysym}
\pagestyle{empty}
\parindent=0pt
\setbox0=\hbox{
x^2 + \phi
}
\textheight=\ht0
\textwidth=\wd0
\oddsidemargin=-1cm
\topmargin=-1.5cm
\advance\textheight by 1cm
\advance\textwidth by 1cm
\begin{document}
\vbox{\vss\hbox{\hss\copy0\hss}\vss}
\end{document}

我不太了解 LaTeX,因为我只在 Math.SE 上用过它来计算方程式。我把这个模板带到了某个地方,如果可以改进的话,我愿意听取建议。

但是,问题在于这无法编译!运行latex source.tex结果如下:

Missing character: There is no x in font nullfont!

! Missing $ inserted.
<inserted text> 
                $
l.10 x^
       2 + \phi

我的理解是,一些包正在设置nullfont模式,所以我无法正确输入方程式。

答案1

我不明白为什么需要\setbox\vbox\hbox指令。如果您只想创建一个包含某个数学表达式的图像文件,字体大小为 12pt,您可以通过编写以下代码来实现此目的

\documentclass[12pt,preview,border=1pt]{standalone}
\begin{document}
$ x^2 + \phi $
\end{document}

比创建更复杂的内容$ x^2 + \phi $更容易。例如,要在 displaymath 模式下渲染前面的内容和方程式编号,你可以这样写

\documentclass[12pt,preview,border=1pt]{standalone}
\begin{document}
\begin{equation}
x^2 + \phi
\end{equation}
\end{document}

答案2

使用

\setbox0=\hbox{%
  $x^2 + \phi$%
}

或者:

\documentclass[12pt,preview,border=1pt]{standalone}
\begin{document}

\[ x^2 + \phi \]

\end{document}

相关内容