【问题标题】:Latex color box inline with text内嵌文字的乳胶彩盒
【发布时间】:2025-12-13 04:35:01
【问题描述】:

我正在尝试组合一个 LaTeX 颜色框。 xcolor 包 \fcolorbox 似乎是我想要的,但我无法得到完全正确的渲染。当我使用

\fcolorbox{black}{red}{}

它会在文本行底部呈现一个小框。我设法做的最好的事情是用类似的文本颜色伪造它:

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

但是,我担心这不会在所有使用已定义颜色的情况下正确渲染。有没有办法可以声明一个具有完整内嵌文本高度的空文本框?还有其他解决方案吗?

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

【问题讨论】:

    标签: latex colors


    【解决方案1】:

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

    \def\testclr#1#{\@testclr{#1}}
    \def\@testclr#1#2{{\fboxsep\z@\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/

    【讨论】:

    • 感谢您的指导。我最终从那里弄清楚了。我在命令的 \fboxsep 部分弹出错误(需要空格命令),并且必须弄清楚 \def(而不是 \newcommand)。对于那些感兴趣的人,一个好帖子在这里tex.stackexchange.com/questions/655/…