怎样才能在分数线周围添加彩色轮廓?

怎样才能在分数线周围添加彩色轮廓?

我用contour包在图表中的标签周围放置粗白色轮廓,这样它们在网格线上方仍然可读,而不会占用太多空间。

[outline]不幸的是,当该选项处于活动状态时(用于生成“正确”的轮廓而不是文本的多个副本),该包无法绘制分数或根符号中使用的水平线的轮廓。

有没有其他方法可以生成方程式的彩色轮廓?也许可以使用pgf

这个包发生的情况如下contour

sqrt{\frac{a}{b}} 带有红色轮廓。水平线周围的轮廓缺失。

使用这个最小工作示例生成:

\documentclass{最小}
\usepackage[大纲]{轮廓}
\usepackage{amsmath}

\轮廓长度{.6pt}
\开始{文档}
\contour{红色}{$\sqrt{\dfrac{A}{B}}$}
\结束{文档}

答案1

Knuth 在 TeXBook 中给出了“穷人的大胆”的例子(The TeXbook,第 386 页),可以通过在正常粗细符号上进行轻微偏移来排版获得。

正如他所说:

结果有点模糊,如果有真品的话,它们肯定不是它们的对手;但穷人的勇敢也比没有好,偶尔你也可以侥幸逃脱惩罚。

这里可以使用类似的技术,代码如下所示:

\documentclass{article}
\usepackage{graphicx,xcolor} 
\usepackage{amsmath}
\def\PoorManContour#1#2#3{\leavevmode
    \setbox0=\hbox{{#1}}%
    \color{#3}\kern-.002em\copy0\kern-\wd0
    \color{#3}\raise-.04em\copy0\kern-\wd0
    \color{#3}\lower.04em\copy0\kern-\wd0
    \color{#3}\raise0.04em\copy0\kern-\wd0
    \color{#2}\raise-.012em\copy0\kern-\wd0
    \color{#2}\kern.06em\copy0\kern-\wd0
    \color{blue}\kern-.020em\lower.003em\box0
}
\begin{document}
\colorbox{gray!5}{\scalebox{5}{\PoorManContour{$\sqrt{\dfrac{A^3_i}{B^2}}$}{gray!60}{gray!60}}}
\end{document}

为了获得最佳效果,必须逐小步调整字距,大概 20 步左右。为简单起见,我没有这样做。在最终版本中,您需要调整颜色以适应,可能将阴影更改为白色。

替代文本

编辑

在阅读下面 Jan 的评论后,我阅读了手册并发现事实,正如评论者所说,实现 OP 想要的最简单的方法是包含没有选项的包,即\usepackage{contour}。有助于 RFM!

答案2

如果您可以使用 ConTeXt 绘制标签(取决于图形的生成方式),那么您可以在 metapost 中访问标签的路径并根据需要对其进行操作。例如,查看metafun 手册,第 8.6 节(特别是第 367 和 369 页)。

相关内容