
Estou tentando adicionar uma linha horizontal (como \hrule
) que começa logo após o título de cada seção, preenche o restante da linha e é alinhada verticalmente com o título, conforme mostrado abaixo.
Para isso, defini uma \newcommand
chamada \raisedrule
que gera a linha horizontal desejada (seguindoesta postagem). No entanto, tenho dificuldade em incorporá-lo na definição dos títulos das secções.
Tentei usar o titlesec
pacote, mas não encontrei uma forma de gerar uma linha menor que a largura do texto. Também tentei usar o sectsty
pacote, usando o seguinte código:
\documentclass{article}
\newcommand{\raisedrule}[2][0em]{\leaders\hbox{\rule[#1]{1pt}{#2}}\hfill}
\usepackage{sectsty}
\sectionfont{
\setmainfont{Arial} \raisedrule[0.32em]{0.75pt}
}
\usepackage{fontspec}
\begin{document}
\section*{SECTION HEADING}
\end{document}
o que não apenas dá um “Líderes não seguidos pela cola adequada”. erro, mas não acho que geraria a saída necessária de qualquer maneira.
Observe que, conforme mostrado no código, também quero alterar a fonte do título, o que pode ser importante para a solução.
Qualquer ajuda seria muito apreciada.
Responder1
Se você estiver disposto a mudar paratitlesec
que oferece mais recursos de personalização (também useixhfill
para produzir facilmente a regra, mas isso é opcional):
\documentclass{article}
\usepackage{fontspec}
\usepackage{titlesec}
\usepackage{xhfill}
\newcommand\ruleafter[1]{#1~\xrfill[.7ex]{1pt}}
\titleformat{\section}
{\normalfont\Large\fontspec{Arial}}{\thesection}{1em}{\ruleafter}
\begin{document}
\section*{SECTION HEADING}
\end{document}
O resultado:
Ajuste as configurações das regras de acordo com suas necessidades; você pode querer ajustar o espaço entre o título e a regra e, comoSean Allredmenciona emhis comment
, basta usar \fontspec
em vez de \setmainfont
.