2011-01-17 34 views
1

我正试图把LaTeX彩盒放在一起。 xcolor包\ fcolorbox似乎是我想要的,但我无法让渲染非常正确。当我使用乳胶彩盒内嵌文字

\fcolorbox{black}{red}{} 

它呈现一个小箱子凹陷到文本行的底部。我已经成功地做到最好是假货与类似的文本颜色:

\fcolorbox{black}{red}{\textcolor{red}{--}} 

不过,我很担心,这将不符合定义的颜色所有情况下正确呈现。有没有办法我可以声明一个完整的行内文本高度的空白文本框?还有其他解决方案吗?

我基本上寻找的代码,通过文档在ftp://ftp.dante.de/pub/tex/macros/latex/contrib/xcolor/xcolor.pdf产生的颜色框。我提到的框在整个过程中都使用,但第一个实例在第4页。谢谢。

回答

3

与pdf相同目录中的xcolor.dtx文件包含软件包的源代码和文档的来源。从源文件中的相关位:

\def\testclr#1#{\@testclr{#1}} 
\def\@testclr#1#2{{\fboxsep\[email protected]\fbox{\colorbox#1{#2}{\phantom{XX}}}}} 

... 

(Answer: 40\% \testclr{green} $+$ 60\% \testclr{yellow} $=$ \testclr{green!40!yellow}, e.g., |\color{green!40!yellow}|) 

基本上,你的颜色框中的内容使用\phantom{},并确保幽灵角色中的至少一个是全高。

另外,https://tex.stackexchange.com/

+0

感谢您的指导。我最终从那里搞清楚了。我在命令的\ fboxsep部分弹出了一个错误(需要一个空格命令),并且必须找出\ def(而不是\ newcommand)。对于那些有兴趣的人来说,这里有一篇很好的文章http://tex.stackexchange.com/questions/655/what-is-the-difference-between-def-and-newcommand。 – Nate