Función para alinear elementos horizontalmente.

Función para alinear elementos horizontalmente.

he encontrado estoplantilla del curriculum vitaeen el dorso y me gustaría hacer algunos ajustes en cómo se coloca la información del encabezado. Originalmente, así es como se ve el encabezado del currículum:

Encabezado original

La función original makecvheaderse ve así:

\newcommand{\makecvheader}{%
  \begingroup
    \altacv@left@photos\hfill%
    \begin{minipage}{\dimexpr\linewidth-\altacv@photos@width}%
    \raggedright%
    {\namefont\color{name}\MakeUppercase{\@name}\par}
    \medskip
    {\taglinefont\color{tagline}\@tagline\par}
    \medskip
    {\personalinfofont\@personalinfo\par}
    \end{minipage}\hfill%
    \altacv@right@photos\par%
  \endgroup\medskip
}

Pero quiero que toda la información personal dispuesta en las líneas debajo del eslogan se apile a la derecha. Entonces pensé que si creaba un segundo minipagedentro del grupo sería suficiente. Pero eso es lo que tengo:

Encabezado modificado

Y aquí están las modificaciones que he hecho:

\newcommand{\makecvheader}{%
  \begingroup
    \altacv@left@photos%
    \begin{minipage}{\dimexpr\linewidth-\altacv@photos@width}%
    \raggedright%
    {\namefont\color{name}\MakeUppercase{\@name}\par}
    \medskip
    {\taglinefont\color{tagline}\MakeUppercase{\@tagline}}
    \medskip
    \end{minipage}%
    \begin{minipage}{\dimexpr\altacv@photos@width}%
    \raggedleft%
    {\personalinfofont\@personalinfo\par}
    \end{minipage}
  \endgroup\medskip
}

Y así es como quería que se viera: Posicionamiento deseado

Entonces, ¿cuál es la mejor manera de lograrlo? Espero que alguno de ustedes pueda ayudarme. Gracias de antemano.

Respuesta1

La razón por la que se recorta es que el ancho de la primera minipágina ( \dimexpr\linewidth-\altacv@photos@width) abarca todo el ancho de línea menos el ancho de la imagen.

Aquí tienes una solución rápida y sucia.

\newcommand{\makecvheader}{%
  \begingroup
    \altacv@left@photos%
    \begin{minipage}[t]{0.5\linewidth}%
    {\namefont\color{name}\MakeUppercase{\@name}\par}
    \medskip
    {\taglinefont\color{tagline}\@tagline\par}
    \end{minipage}\hfill%
    \begin{minipage}[t]{3cm}%
    \raggedright%
    {\personalinfofont\@personalinfo\par}%
    \end{minipage}\hfill%
    \begin{minipage}[t]{\altacv@photos@width}
        \strut\vspace*{-\baselineskip}\newline\altacv@right@photos\par%
    \end{minipage}
  \endgroup\medskip
}

Tampoco es necesario modificar el archivo cls usando renewcommandy ajustando el código anterior entre \makeatlettery \makeatother.

ingrese la descripción de la imagen aquí

PD: Rápido porque es el que menos tiempo lleva. Sucio porque tienes que ajustar el ancho de la minipágina según el contenido, no es la mejor manera de alinear el contenido y se romperá si decides usar opciones diferentes (como la opción de poner la imagen a la izquierda).

información relacionada