# How to Produce a Half-Box Symbol?

Does anyone know how to produce a half-box symbol in LaTeX which comprises a bar over an entire expression and a vertical line on the right meeting in the corner, like the top and the right edge of a box?

I currently use \overline{abc}\vert as a compromise (say, abc is the text I wish to enclose) but clearly the bar and the vertical line do not meet each other in the top-right corner.

Thanks

You probably want an actuarial symbol annuity. One of the solutions is the following macro, taken from ftp://ftp.mackichan.com/swandswp30/support/actuarial.tex,‎ with the usage {\bx argument}:

\documentclass{article}

\begin{document}

\newbox\tmp
\newdimen\height
\newdimen\dropdist
\def\BX#1{\setbox\tmp=\hbox{$\overline{\scriptstyle #1}$}
\height=\ht\tmp
\dropdist=\dp\tmp
\box\tmp
\lower \dropdist \hbox{\vrule height
\height width .25pt\relax}
\ifnum0={\else}\fi
}
\def\bx{\expandafter\BX\expandafter{\ifnum0=}\fi}

${\bx x+y+z\,}$
\end{document}


If it will not be used in such a context, some modifications are needed, in particular remowing \scriptstyle before an argument.

• That's brilliant. It was indeed for typesetting an actuarial science document which I am helping out with. – user42427 Dec 9 '13 at 8:58
• The rules have different widths. There are far better solutions around – egreg Dec 9 '13 at 9:00
• @egreg Yes, these solutions look nicer. However, for some reason the author made such a box. With the suggested knowledge OP can seek for the best solution. And an argument only for fun: the hunting for two gold badges begun. ;-) – Przemysław Scherwentke Dec 11 '13 at 16:30

A TikZ approach.

# Code

\documentclass{article}
\usepackage{tikz}

\newcommand\halfbox[1]{
\tikz[baseline=(n.base)]{\node(n)[inner sep=1pt]{$#1$};
\draw[line cap=round](n.north west)--(n.north east)--(n.south east);
}
}

\begin{document}
$f(x)=\overline{abc}\vert$

$f(x)=\halfbox{abc}$
\end{document}


# Output

The following takes most of the elements from the LaTeX kernel \framebox to construct a \halfbox:

\documentclass{article}

\makeatletter
\newcommand{\halfbox}[1]{%
\setbox\@tempboxa\hbox{#1\kern\fboxsep}%
\hbox{%
\lower\@tempdima\hbox{%
\vbox{%
\hrule\@height\fboxrule
\hbox{%
\vbox{%
\vskip\fboxsep
\box\@tempboxa
\vskip\dimexpr\fboxsep+\fboxrule\relax%
}%
\vrule\@width\fboxrule}%
}%
}%
}}
\makeatother

\begin{document}

\fbox{abc}\ \halfbox{abc}

\end{document}


Since it uses the same construction as \framebox, lengths \fboxrule and \fboxsep can be adjusted in the same way.

• this would look nicer if there wasn't quite so much white space between the rules and the expression. – barbara beeton Dec 9 '13 at 15:36