如何在 LaTeX 中绘制一个 1cm 的正方形并填充颜色?我找到了mdframed
并framebox
做到了这一点,但需要在里面写文字。我只需要画一个框。
答案1
使用简单的\rule
命令:
\documentclass{article}
\usepackage{xcolor}
\newcommand\crule[3][black]{\textcolor{#1}{\rule{#2}{#3}}}
\begin{document}
\crule{1cm}{1cm} \crule[blue]{1cm}{1cm} \crule[red!50!white!100]{1cm}{1cm}
\end{document}
答案2
还没有人绘制并填充过一个盒子*,这可能就是原始问题的意思。值得一提的是,这里有一种完全不同的方法来获得 10 毫米的盒子 - 在空盒子周围使用 fbox。8-)
\usepackage{xcolor}
...
\fboxsep=4mm \fboxrule=1mm
\fcolorbox{black}{blue!40!white}{\null}
编辑:* 抱歉,上面的解决方案带有绘制/填充的框。但没有此类图片。
答案3
您可以使用tikz
和\newcommand
来为盒子设置一个小命令。
\documentclass{article}
\usepackage{lipsum}
\usepackage{tikz}
\newcommand{\mycbox}[1]{\tikz{\path[draw=#1,fill=#1] (0,0) rectangle (1cm,1cm);}}
\begin{document}
\lipsum[1-2]
\mycbox{blue}
\mycbox{red}
\end{document}
结果:
答案4
上述所有解决方案都扩展为
\hbox{\pdfliteral{0 0 1 rg}\vrule height1cm width1cm depth0cm\pdfliteral{0 g}}
在pdfTeX级别。唯一的区别(当使用TikZ时)是您需要从56个外部文件中读取26560行代码。TikZ做什么?它使用编程语言进行排版来实现图片编程。有时直接使用原始语言进行排版似乎更实用。我的意思是这是这种情况。