![Cabeçalho centralizado verticalmente](https://rvso.com/image/420767/Cabe%C3%A7alho%20centralizado%20verticalmente.png)
Eu tenho um documento com este preâmbulo:
\documentclass[12pt, b5paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
% ...
\usepackage{geometry}
\geometry{
vcentering=True,
margin=2cm,
showframe % show how the type block is set on the page
}
% ...
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\lhead{}
\chead{top} % header
\rhead{}
O texto em "topo" não está centralizado verticalmente. Como centralizaria verticalmente na margem de 2 cm (de preferência sem calcular o ponto de centralização apropriado)?
EDIT: Olhando para os documentos, acho que não vcentering
faz o que pensei. Independentemente disso, existe uma maneira de centralizar verticalmente o cabeçalho?
Responder1
Para centralizar o bloco de cabeçalho (height: \headheight
) verticalmente na margem superior, você pode executar o seguinte código:
\documentclass[12pt, b5paper]{article}
\usepackage{geometry}
\geometry{
margin=2cm,
headsep=\dimexpr1cm-0.5\headheight\relax,
showframe % optional
}
Esta solução funciona tratando headsep
como uma quantidade determinada por tmargin
(aqui: 2cm) e \headheight
. A \headheight
variável length também pode ser ajustada, é claro; por exemplo, defina headheight=\baselineskip,
antes de executar headsep=\dimexpr1cm-0.5\headheight\relax,
.
Omiti a opção vcentering=true
que estava no seu código por dois motivos: primeiro, ela foi substituída por margin=2cm
. Em segundo lugar, ele não alcança o que você deseja.