テキストの周囲に線を描きながら、片側だけ開けるにはどうすればよいですか?

テキストの周囲に線を描きながら、片側だけ開けるにはどうすればよいですか?

に似たようなことをしたいのです\boxed{whatever}が、箱の片側が開いている状態です。次のようなものです。

\documentclass{article}

\begin{document}

\[
\overline{\underline{abc |}}
\]

\end{document}

結果は次のようになります (見苦しいですが、概念的には私が望んでいるものに近いです)。

下線、上線、および '|' を使用した結果

必要なことを実行する簡単な方法があると思いますが、見つけることができませんでした。

答え1

このような ?

tcolorbox の場合:

スクリーンショット

\documentclass{article}
\usepackage{tcolorbox}

\newtcbox{\boxed}{on line,colframe=black,colback=white,sharp corners,
before upper={\rule[-3pt]{0pt}{10pt}},boxrule=1pt,leftrule=0pt,
boxsep=0pt,left=2pt,right=1pt,top=1pt,bottom=.5pt}

\begin{document}

Quick brown fox \boxed{jumped} over the lazy dog.

\end{document}

答え2

\documentclass{article}

\begin{document}

\[
\begin{array}{@{}|@{\,}l@{}}
\hline
abc\\
\hline
\end{array}\quad\mbox{or}\quad
\begin{array}{@{}l@{\,}|@{}}
\hline
abc\\
\hline
\end{array}
\]

\end{document}

ここに画像の説明を入力してください

答え3

tikz による回答:

\documentclass{article}
\usepackage{tikz}
\usepackage{parskip}
\setlength{\parskip}{15pt}
\newsavebox{\mybox}
\newcommand{\PutInsideOpenBox}[3][-,black]{\ifdefined\extraxskip\relax\else\xdef\extraxskip{1pt}\fi\ifdefined\extrayskip\relax\else\xdef\extrayskip{3.5pt}\fi\savebox{\mybox}{\vbox{\hbox{#3}}}\begin{tikzpicture}[outer sep=0,inner sep=0pt,baseline=#2]\node at ({\wd\mybox/2},{(\ht\mybox+\dp\mybox)/2}){\usebox{\mybox}};
\draw[#1]({-\extraxskip},{-\extrayskip})--({\wd\mybox+\extraxskip},{-\extrayskip})--({\wd\mybox+\extraxskip},{(\ht\mybox+\dp\mybox)+\extrayskip})--({-\extraxskip},{(\ht\mybox+\dp\mybox)+\extrayskip});\end{tikzpicture}}
\begin{document}

\[
\PutInsideOpenBox{0pt}{
abc
}\]

In text: \(\PutInsideOpenBox[-,thick,red]{0pt}{AbcD}\) that will expand in two lines and we will see that the baselineskip is slightly increased

Increasing borders:
\def\extraxskip{3pt}
\def\extrayskip{6pt}

In text: \(\PutInsideOpenBox[-,thick,red]{0pt}{AbcD}\) that will expand in two lines and we will see that the baselineskip is enough increased

An equation:

\[
\PutInsideOpenBox{2.5pt}{f(x)}=x\cdot \PutInsideOpenBox[-,blue]{2.5pt}{(y+1)}
\]

\end{document}

ここに画像の説明を入力してください

答え4

fboxパッケージ:

\documentclass{article}
\usepackage{fbox}

\begin{document}

\fbox[trb]{abc} \fbox[tlb]{abc}

\end{document}

ここに画像の説明を入力してください

関連情報