9

How to get a \bar more thicker (0.8pt for example) than usual and fit all character?

Martin Scharrer
  • 262,582

2 Answers2

13
\documentclass{article}
\usepackage{accents}
\newcommand\thickbar[1]{\accentset{\rule{.4em}{.8pt}}{#1}}
\begin{document}

$\bar A$ VS $\thickbar A$

\end{document}

enter image description here

You can change the width and height of the rule as you wish.

Leo Liu
  • 77,365
10
\makeatletter
\newcommand{\thickbar}{\mathpalette\@thickbar}
\newcommand{\@thickbar}[2]{{#1\mkern1.5mu\vbox{
  \sbox\z@{$#1\mkern-1.5mu#2\mkern-1.5mu$}%
  \sbox\tw@{$#1\overline{#2}$}%
  \dimen@=\dimexpr\ht\tw@-\ht\z@-.8\p@\relax
  \hrule\@height.8\p@ % adjust for the desired rule thickness
  \vskip\dimen@
  \box\z@}\mkern1.5mu}
}
\makeatother

With \mathpalette we make a macro that will do the right thing in all sizes. The first \sbox command sets the argument in the desired size (display, text, script or scriptscript); the second one sets the argument overlined; then we measure the difference, thus computing the clearance between the symbol and the bar above it. Then we draw a rule with the desired thickness, leave the computed clearance and print the symbol.

It's not exactly as wide as \bar, but it should be close enough.

egreg
  • 1,121,712