I am creating a CV with the moderncv classic style. My header looks so far like this:

enter image description here:

I would like to achieve that

  1. the name and title are not aligned at the lower, but at the upper end of the box.
  2. the name is "overlapping" with the address box, because I have to make the name smaller at the moment to avoid a line break.

I guess that I have to change moderncvstyleclassic.sty. Unfortunately I'm not that familiar with the syntax so I cannot figure out what to change.

Here is my code:



% personal data
\firstname{Dr. Marcus}
\address{Street abc}{D-80331 Munich}  
\mobile{+49 xxx / xx xx xx xx}               
\email{[email protected]}         


Many thanks!

  • Welcome to TeX.SX! You can have a look at our starter guide to familiarize yourself further with our format.
    – user31729
    Jun 17, 2014 at 13:48
  • Unfortunately your example does not compile :-( The \title{...} and its multiple \` generate errors
    – user31729
    Jun 17, 2014 at 13:49
  • There's an easy way, and a hard way. The easy way could be hackish, but the hard way would mean a complete copy-and-paste of \makecvtitle to reconfigure it to suit your needs (since moderncv isn't adjustable in that way). For your first problem, you can use \familyname{\rlap{Surname that is long}}...
    – Werner
    Jun 17, 2014 at 14:03
  • @ChristianHupfer: Thanks you. I've eliminated the multiple '\\' again. They were in there accidentally from a test that I've made before posting.
    – Susanne
    Jun 17, 2014 at 14:30
  • If you replace them by \newline, you can at least shift the name and title to the top, but is not really nice ;-)
    – user31729
    Jun 17, 2014 at 14:35

1 Answer 1


You can modify \makecvtitle (however unwieldy):

enter image description here



  % recompute lengths (in case we are switching from letter to resume, or vice versa)
  % optional detailed information (pre-rendering)
  \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
    \protected@edef\phonesdetails{\phonesdetails\protect\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
  \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
    \protected@edef\socialsdetails{\socialsdetails\protect\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
  % optional photo (pre-rendering)
        \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
      \phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict
      \socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict
  % name and title
  \ifthenelse{\lengthtest{\makecvtitlenamewidth=0pt}}% check for dummy value (equivalent to \ifdim\makecvtitlenamewidth=0pt)
    \namestyle{\@firstname\ \@lastname}%
  % optional detailed information (rendering)
  \llap{\usebox{\makecvtitledetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvtitlenamewidth is forced
  % optional photo (rendering)
  % optional quote
  \par}% to avoid weird spacing bug at the first section if no blank line is left after \makecvtitle

% personal data
\firstname{Dr. Marcus}
\familyname{\rlap{Surname that is long}}
\address{Street abc}{D-80331 Munich}  
\mobile{+49 xxx / xx xx xx xx}               
\email{[email protected]}         


It's all about adjusting the boxes that make up the header. It's easiest to still supply your \familyname with an additional \rlap. The adjustment for the name uses some detail about minipage - specifically specifying a fixed height.

You must log in to answer this question.

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