CSS border-top、border-bottom、border-right LaTeX 等效项

CSS border-top、border-bottom、border-right LaTeX 等效项

LaTeX 中是否有与 CSS border-top、border-bottom、border-right 属性等效的属性?

我想在文本上加下划线和上划线,并在右侧添加边框,而不是简单地在文本上加下划线或上划线。因此,文本将添加下划线/上划线,并在右侧添加边框,而不是简单的下划线。

下面是我想要做的一个示例(在 CSS 中):http://accent.u-biq.org/english.html

我之前见过带有此类注释的 PDF,因此我很确定这是可以做到的。

(谷歌搜索四个标签:日语音调重音标注)

答案1

正如我已经回答了LaTeX 社区:一种快速简便的方法是定义一个字符的 TikZ 矩阵,其中每个字符都是一个可以引用的节点,用于绘制这样的路径。

例如:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}
  \matrix (m) [matrix of nodes]{
    A & B & C & D & E\\};
  \draw (m-1-1.north west) -- (m-1-1.north east) -- (m-1-1.south east)
    -- (m-1-2.south west) -- (m-1-2.south east) -- (m-1-2.north east)
    -- (m-1-5.north east);
\end{tikzpicture}
\end{document}

符号周围的路径

答案2

可能有等的变体\fbox\frame它们只在一个或两个特定的边上绘制框架规则,但我不知道有任何包提供这样的宏。

我采用了标准 LaTeX\fbox定义,并添加了颜色支持和一个可选参数,可用于选择带有框架的边:l左、b下、r右和上。可以使用长度和内容与框架之间的间隔来t更改线条粗细。\fboxrule\fboxsep

\documentclass{article}

\usepackage{xcolor}

\makeatletter

\newcommand\cfbox[3][lbrt]{%
  \begingroup
  \leavevmode
  \setbox\@tempboxa\hbox{%
    \color@begingroup
      \kern\fboxsep{#3}\kern\fboxsep
    \color@endgroup
  }%
  \@tempdima\fboxrule
  \advance\@tempdima\fboxsep
  \advance\@tempdima\dp\@tempboxa
  \hbox{%
    \hskip-.5\fboxrule
    \lower\@tempdima\hbox{%
      \vbox{%
        \in@{t}{#1}%
        \ifin@
            {\color{#2}%
            \hrule\@height\fboxrule
            }%
        \fi
        \hbox{%
          \in@{l}{#1}%
          \ifin@
            {\color{#2}%
            \vrule\@width\fboxrule
            }%
          \fi
          \vbox{%
            \vskip\fboxsep
            \box\@tempboxa
            \vskip\fboxsep}%
          \in@{r}{#1}%
          \ifin@
            {\color{#2}%
            \vrule\@width\fboxrule
            }%
          \fi
        }%
        \in@{b}{#1}%
        \ifin@
          {\color{#2}%
          \hrule\@height\fboxrule
          }%
        \fi
      }%
    }%
    \hskip-.5\fboxrule
  }%
  \endgroup
}

\makeatother

\begin{document}

\cfbox[l]{red}{A}%
\cfbox[b]{red}{B}%
\cfbox[r]{red}{C}%
\cfbox[t]{red}{D}%

\bigskip


\setlength{\fboxsep}{.2ex}
\cfbox[b]{red}{AB}%
\cfbox[ltr]{red}{C}%
\cfbox[b]{red}{D}%

\end{document}

结果

相关内容