在乳胶上绘制矩形的最简单方法是什么?我只需要一个简单的矩形,让我的学生输入问题的最终答案,我希望我不必学习像 Tikz 这样花哨的东西。
答案1
你可以做一些简单的事情,比如
\documentclass{article}
\newcommand\answerbox{%%
\fbox{\rule{1in}{0pt}\rule[-0.5ex]{0pt}{4ex}}}
\pagestyle{empty}
\begin{document}
Put you answer here: \answerbox
\end{document}
无需使用TikZ
。
稍微解释一下。
语法\rule
如下:
\rule[<lift>]{<width>}{<height>}
我使用两个单独的\rule
命令,因为如果我写了类似
\rule{1in}{4ex}
我只得到了一个黑色的盒子,这违背了目的。
通过使用负值,<lift>
我可以将框的底部放到基线以下。
\fbox
然后添加更多空间。这些值由以下长度控制
\fboxrule
\fboxsep
一般来说,\fboxrule
是0.4pt
和\fboxsep
是3pt
,但您可以根据需要调整这些值。
答案2
没什么特别的tikz
。它是简单的(此答案仅用于展示)。
\documentclass{article}
\usepackage{tikz}
\begin{document}
Your answer: \tikz[baseline=0.6ex]\draw (0,0) rectangle (10cm,3ex);
Your answer: \tikz[baseline=-4pt]\node[draw,minimum width=10cm,minimum height=3ex] {};
\end{document}
答案3
实际上,如果您想要的只是一个答案框,我想说 tikz 实际上可能是最易读的(至少在语法上)方法。
一个与文本一样宽、1 英寸高、仅为:
\tikz \draw (0,0) rectangle (\linewidth, 1in);
点 (0,0) 仅引用文本中的当前位置,然后\linewidth
赋予它正确的宽度(如果您更改边距,宽度将会调整,然后只需设置高度,1in
这是任意的。
确保\noindent
在开始图片之前使用,因为它将要尝试缩进绘图,这会导致奇怪的对齐问题。
这是一个简单的 MWE:
\documentclass{article}
\usepackage{tikz}
\usepackage{lipsum}
\begin{document}
% question here
\lipsum[1]
\noindent\\
\tikz \draw (0,0) rectangle (\linewidth, 1in);
\end{document}
您也可以\begin{tikzpicture}
\end{tikzpicture}
像在任何其他环境中一样使用标准括号,但我使用了\tikz
它,因为此绘图只有一行长。无论哪种方式,绘制命令都是一行长。
\documentclass{article}
\usepackage{tikz}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\noindent\\
\begin{tikzpicture}
\draw (0,0) rectangle (\linewidth, 1in);
\end{tikzpicture}
\end{document}
我知道你要求的不是tikz
,但我也有同样的感受,直到最近我终于下定决心。水很温暖,我想你也会喜欢的。
使用的最大优点tikz
是能够轻松地制作更精美的答案框,例如:
\tikz \draw[fill=green!5] (0,0) rectangle (\linewidth, -1in) node[pos=.1]{Answer Here:};
为您提供 5% 的绿色填充和标签:
绘制选项[fill=green!5]
用 5% 的绿色填充路径,并在框的 10% 处node[pos=.1]{Answer Here:}
创建一个节点(很棒的放置工具)(它以对角线方式测量,会将文本设置在右下角)。tikz
pos=1
\documentclass{article}
\usepackage{tikz}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\noindent\\
\tikz \draw[fill=green!5] (0,0) rectangle (\linewidth, -1in) node[pos=.1]{Answer Here:};
\end{document}
祝你好运!
答案4
此命令绘制一个填充的框linewidth
(当然,您可以调整它),并允许您指定框的高度。
它使用 创建一个指定高度的框\raisebox
,然后在其周围绘制线条并使用 指定宽度\framebox
。
它使用一个可选参数,因此\answerbox
默认高度为3\baselineskip
,但您可以使用\answerbox[0.5\textwidth]
或任何其他长度来更改它。
\documentclass{article}
\newcommand{\answerbox}[1][3\baselineskip]{%
\noindent\framebox[\linewidth]{%
\raisebox{0pt}[0pt][#1]{}%
}\par\medskip%
}
\begin{document}
Write your answer here:
\answerbox
Write another answer here:
\answerbox[5\baselineskip]
\end{document}