I have used \arraystretch (following this answer) to reduce the height of rows in a tabular environment. This appears to have reduced the space between the top of the text and the top of the row (which is better, for my purpose), but that space is now much less than the space between the bottom of the text and the bottom of the row. I would like to reduce the latter space as well.
How do I get the cells' text vertically centred within the cells? In every cell, the text is only a single line.
I've tried m and b as column types; that had no discernable effect. This answer seemed relevant and suggested \centering\arraybackslash, but that didn't lower the text either.
Defining and using a command to apply raisebox works in horizontal mode in running text, but not in a tabular's cell. This answer recommended surrounding the raisebox and its two arguments between \smash{ and }. I couldn't guess the right syntax to do that, but that might have been the wrong approach anyway, so I return to the main question of how to get the cells' text vertically centred between the \hlines.
MWE:
\documentclass[12pt,a4paper]{article}
\usepackage{array}% for \newcolumntype
% See https://tex.stackexchange.com/a/35517
\renewcommand{\arraystretch}{0.84}
% See https://tex.stackexchange.com/a/406499
\newcolumntype{C}{>{\centering\arraybackslash}m{4.5mm}}
% A way to lower the next token without using the brace characters
\def\bury{\raisebox{-1mm}}
%\newcolumntype{C}{>{\bury}m{4.5mm}}
% See https://tex.stackexchange.com/a/63199
%\newcolumntype{C}{>{\smash\begingroup\bury}m{4.5mm}<{\endgroup}}
\newenvironment{ta}
{\Huge\bf\begin{tabular}{|C|C|}\hline}{\ \hline\end{tabular}}
\begin{document}
\begin{ta}
6&7\ \hline
8&9
\end{ta}
\end{document}





c, unlikemandp, doesn't take a width param, and I was rather relying on that to force columns to have equal width (including, in particular, when every cell in one column is blank). – Rosie F Sep 17 '22 at 17:57w{c}{<dimen>}– egreg Sep 17 '22 at 19:44