7

The acute and grave accents on capital letters are more squat and flatter than on lower case letters. Compare \'A with \'a. What is the code for the squatter acute/grave on capitals if I want it insolation?

Rationale: I need capital letters with macron and acute/grave. If I put \'{} on top of \=A, then the letter is too tall for the interline spacing, partly because \'{} produces the 45-degree accent of \'a (and partly because the default height of the macron is too high).

\documentclass[12pt]{article}

\begin{document}
If the difference between the accents of \'A, \'a isn't apparent, try superimposing
them: \makebox[0pt]{\'A}\makebox[0pt]{\raisebox{.6ex}{\'a}}\,\raisebox{.6ex}{\'a}.
See how the character on the left has a wedge (as opposed to the acute on the
right-hand \'a)?  The two accents don't exactly overlay, because the acute on
\'A is flatter.
\end{document}

wrong accents

6
  • The code depends on the font encoding you are using. In T1 encoding \'{A} is a glyph (\char193), \'{a} is \char225. The accent alone is \char1. Commented Jun 5, 2012 at 7:33
  • @doncherry I've added code and pictures Commented Jun 5, 2012 at 8:33
  • @UlrikeFischer \char1 yields only the accent used on lower case letters (e.g., \'a, \'n). I checked Mittelbach's charts for various encodings (including T1, which I'm using). I can't see a char number for the squat acute/grave used on capitals. Commented Jun 5, 2012 at 8:36
  • @Daniel Harbour of course you don't see an accent character: t1 encoding only covers certain characters, and doesn't provide composites for characters already in its repertoir. \usepackage[T1]{fontenc} (in latex) will read the sequence \' A, and produce the t1-encoding character for A-acute-accent Commented Jun 5, 2012 at 8:45
  • 2
    Well there isn't. In T1 encodings there are properly designed, real glyphs with accents (Á á) and there is one "lonely" accent which can be used for chars for which accented glyphs doesn't exist. There isn't enough place in T1 to store all sort of versions of this accent in various angles. If you don't like this "lonely" accent you will have to design one. You can't extract the accent from the Á: It is attached to the glyph like the left leg of the A. Commented Jun 5, 2012 at 8:48

3 Answers 3

6

You find the isolated acute accent used for capital letters in the encoding TS1, where it's called \capitalacute:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\begin{document}
\capitalacute{A}\'{A}\\
\capitalacute{}\'{}\\
{\fontencoding{TS1}\selectfont\char 1}\char1
\end{document}

enter image description here

0
2

You maybe able to do minor adjustments using the slant dimension.

enter image description here

Here is some code I had for a similar issue:

\documentclass[10pt]{article}

\usepackage{graphicx} 


\begin{document}

\font \romanfont=cmr10
\font\specroman=cmr10
%% Next, the special registers
\newdimen\savedvalue
\savedvalue=\fontdimen5\romanfont
\newdimen\specialvalue
\specialvalue=4.75pt
%% Finally, definitions.

\def\specrm{%
  \aftergroup\restoredimen
  \fontdimen5\specroman=\specialvalue
  \specroman  }
\def\restoredimen{%
\fontdimen5\romanfont=\savedvalue }


 \scalebox{10}{\romanfont \'A}  {\scalebox{10}{\specrm \' A}}

\medskip
{\noindent\obeylines\specrm 
the value of fontdimen1 (slant)  is \the\fontdimen1\font
the value of fontdimen2 (interword space) is \the\fontdimen2\font  
the value of fontdimen3 (interword stretch) is \the\fontdimen3\font 
the value of fontdimen4 (interword shrink) is \the\fontdimen4\font 
the value of fontdimen5 (x-height) is \the\fontdimen5\font 
the value of fontdimen6 (quad width) is \the\fontdimen6\font 
the value of fontdimen7 (extra space)  is \the\fontdimen7\font 
}
\medskip

\font \romanfont=cmr10
\font\specroman=cmr10
%% Next, the special registers
\newdimen\savedvalue
\savedvalue=\fontdimen1\romanfont
\newdimen\specialvalue
\specialvalue=0.15pt
%% Finally, definitions.

\def\specrm{%
  \aftergroup\restoredimen
  \fontdimen1\specroman=\specialvalue
  \specroman  }
\def\restoredimen{%
\fontdimen1\romanfont=\savedvalue }


 \scalebox{10}{\romanfont \'A}  {\scalebox{10}{\specrm \' A}}

\medskip
{\noindent\obeylines\specrm 
the value of fontdimen1 (slant)  is \the\fontdimen1\font
the value of fontdimen2 (interword space) is \the\fontdimen2\font  
the value of fontdimen3 (interword stretch) is \the\fontdimen3\font 
the value of fontdimen4 (interword shrink) is \the\fontdimen4\font 
the value of fontdimen5 (x-height) is \the\fontdimen5\font 
the value of fontdimen6 (quad width) is \the\fontdimen6\font 
the value of fontdimen7 (extra space)  is \the\fontdimen7\font 
}
\end{document}

There is also a package you can have a look at https://github.com/zellyn/accentbx

1
  • What a great package. Thanks for the pointer and for the code. Gives me a much neater way of lowering my macrons (in computer modern, they're too high for my taste). Commented Jun 5, 2012 at 12:46
1

Your MWE does not show the issue that you show in the image. I have adjusted it so that it does:

\documentclass[12pt]{article}

\begin{document}
If the difference between the accents of \'A, \'a isn't apparent, try superimposing
them: \makebox[0pt]{\'A}\makebox[0pt]{\raisebox{.6ex}{\'a}}\,\raisebox{.6ex}{\'a}.
See how the character on the left has a wedge (as opposed to the acute on the
right-hand \'a)?  The two accents don't exactly overlay, because the acute on
\'A is flatter.


\makebox[0pt]{\'A}\makebox[0pt]{\raisebox{.6ex}{\'a}}\,\raisebox{.6ex}{\'a}

\fontencoding{T1}\selectfont

\makebox[0pt]{\'A}\makebox[0pt]{\raisebox{.6ex}{\'a}}\,\raisebox{.6ex}{\'a}
\end{document}

enter image description here

As you will see in the image from the modified MWE, using the default OT1 encoding the accented characters are made by placing an accent character over the base, so the accents look the same. In the final line the T1 encoding is used this uses twice as many glyphs per font, including designed accented characters a slightly flatter accent design is used for capital letters in the EC font design.

3
  • Thanks, but using the more upright accent for capitals gets me into trouble with interline spacing. Check out egreg's answer below. Commented Jun 5, 2012 at 9:11
  • Yes, but my point was that there is not a different accent in the encoding used by your MWE. Your example tex source and example image were not generated by the same code (or you have a non standard LaTeX installation that has changed the default encoding) Commented Jun 5, 2012 at 9:17
  • Ah, missed your point. Thanks for clarifying the question. Commented Jun 5, 2012 at 12:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .