我使用的\fcolorbox
背景本身就是彩色的;我不需要框内的颜色,我希望它的背景是透明的,这样背景颜色就会显示出来。这个transparent
包似乎不适用于这种情况。我怎样才能绘制透明的颜色?
答案1
在我的伊塔劳我以以下方式处理了这个问题。基本上,我的想法是无色文本(例如 TeX 在普通段落中生成的文本)实际上已经具有透明背景,由于默认纸张颜色为白色,因此仅显示为白色。 xcolor
似乎实际上在任何彩色框的背景中“绘制”颜色,因此即使将其设置为“白色”,\fcolorbox
也会使其成为不透明白色。想象一下把这样的一个盒子放在另一个颜色不同的盒子上面,这是有道理的。因此,要画一个透明的你需要不是使用\fcolorbox
, 但 简单\fbox
.
这有两个不足之处:
您必须使用两个不同的命令,具体取决于您是否需要颜色。当然,通常情况就是这样,但如果您真的想要统一,则必须重新定义
\fcolorbox
(或更好地定义您自己的彩色框命令),该命令将“清晰”解释为\fbox
。由于\fcolorbox
有许多可选参数,我觉得这比它值得的麻烦更多。你不能给框架单独
\fbox
。一种方法是\color{<frame color>}
先放\fbox
,然后放\color{<text color>}
里面\fbox
,这是覆盖文本本身的框架颜色所必需的。即使您希望文本为默认的黑色。
例如,这是一个“彩色框架的彩色文本框”:
\newcommand\colorfbox[3]{%
{\color{#1}\fbox{\color{#2}#3}}%
}
\colorfbox{red}{black}{abc} def