背景:我使用 Overleaf 作为我的编辑器/编译器平台。由于它是一台工作电脑,所以我没有本地编译器。
我正在尝试在段落的左上角添加一个小图像。基本上,它的作用类似于首字下沉,但它是 tikzpicture 而不是字母。我想编译我的文档而不出错,但这个错误让我很困惑。有人能解释一下为什么我会出错以及如何修复它吗?
! Undefined control sequence.
<write> ...ght \space (\begin {tikzpicture} \draw
(0,0) rectangle (1.5cm,1.5...
l.18 }{}
\lipsum[1]% error occurs on this line
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
Overleaf 上的编译器报告了这个错误,我的理解\draw
是未定义。如果你注释掉带有 的行\draw
,错误就会消失。更奇怪的是,如屏幕截图和示例项目所示,它无论如何都会绘制图像。
\documentclass{article}
\usepackage{lettrine}
\usepackage{tikz}
\usepackage{lipsum}% for example text
\begin{document}
\begin{tikzpicture}
\draw (0,0) rectangle (1.5cm,1.5cm);
\end{tikzpicture}% this drawing is fine
\lettrine[lines=4]{%
\begin{tikzpicture}
\draw (0,0) rectangle (1.5cm,1.5cm);
\end{tikzpicture}%
}{}\lipsum[1]% error occurs on this line
\end{document}
这是在 Overleaf 上托管的示例https://www.overleaf.com/read/tpjcwbcpwwmw
答案1
主要问题在于将第二个参数留空。A\strut
就可以了。但是,要消除错误消息,请使用保存框。
\documentclass{article}
\usepackage{lettrine}
\usepackage{tikz}
\usepackage{lipsum}% for example text
\newsavebox{\letterbox}
\begin{document}
\savebox{\letterbox}{\begin{tikzpicture}
\draw (0,0) rectangle (1.5cm,1.5cm);
\end{tikzpicture}}%
\lettrine[lines=4]{\usebox\letterbox}{\strut}
\lipsum[1]
\end{document}