Estoy buscando hacer un cuadro negro ajustado alrededor de los títulos de mis capítulos, idealmente solo 1pt
con margen en cada lado. Hasta ahora, mis mejores resultados han sido con soul
:
Sin embargo, notarás que hay demasiado margen en la parte inferior. Además, el resaltado se repite en la parte superior de cada página impar:
¿Cuál es la forma inteligente de hacer esto? No me importa usar otra cosa que no sea soul
, simplemente me pareció una buena solución.
MWE a continuación. Tenga en cuenta que necesitará elMikodacsfuente (¿o quizás cualquier fuente TTF?) en formato FONTLOCATION
.
\documentclass[book,dvipsnames]{memoir}
\usepackage{xcolor}
\usepackage{fontspec}
\usepackage{anyfontsize}
\usepackage{soul}
\sethlcolor{black}
%% Change height of highlight
\makeatletter
\def\SOUL@hlpreamble{%
\setul{}{2ex}%
\let\SOUL@stcolor\SOUL@hlcolor
\SOUL@stpreamble
}
\makeatother
\newfontfamily{\archivo}[Path=/FONTLOCATION]{Mikodacs.ttf}
\usepackage{lipsum} %% For dummy text
%% Chapterstyle
\makechapterstyle{lucknerto}{%
\setlength{\beforechapskip}{-2\onelineskip}%
\setlength{\afterchapskip}{2\onelineskip}%
\renewcommand*{\printchaptername}{}%
\renewcommand*{\chapternamenum}{}%
\renewcommand*{\chapnumfont}{\normalfont\large\sffamily\bfseries}%
\renewcommand*{\afterchapternum}{}%
\renewcommand{\printchaptertitle}{\centering\archivo\color{White}\fontsize{23}{27.6}\selectfont\MakeUppercase}
}
\chapterstyle{lucknerto} %% enable
%% Pagestyle
\makepagestyle{luckner}%
\makeevenhead{luckner}{}{\small{{\MakeUppercase{book title}}}}{}
\makeoddhead{luckner}{}{\small{{\MakeUppercase{\leftmark}}}}{}
\makeevenfoot{luckner}{\large{\thepage}}{}{}
\makeoddfoot{luckner}{}{}{\large{\thepage}}
\pagestyle{luckner} %% enable
\begin{document}
\chapter{\hl{Foobar}}
\lipsum[1-20]
\end{document}
Respuesta1
El estilo es bastante sencillo tcolorbox
y tiene un comando especial \tcbox
para esto, que se puede modificar según las preferencias personales.
La 'dificultad' es entender qué memoir
hace con el título del capítulo. Tuve que cambiar \printchaptertitle
para tener un argumento (que es el caso habitual), además de trabajar con argumentos en movimiento.
\documentclass[book,dvipsnames]{memoir}
\usepackage{xcolor}
\usepackage{fontspec}
\usepackage{anyfontsize}
\usepackage{soul}
\usepackage{tcolorbox}
\sethlcolor{black}
%% Change height of highlight
\makeatletter
\def\SOUL@hlpreamble{%
\setul{}{2ex}%
\let\SOUL@stcolor\SOUL@hlcolor
\SOUL@stpreamble
}
\makeatother
\newfontfamily{\archivo}[Path=/FONTLOCATION]{Micodacs.ttf}
%\newfontfamily{\archivo}{Liberation Sans}
\usepackage{lipsum} %% For dummy text
\tcbset{chapterhead/.style={%
fontupper=\archivo\fontsize{23}{27.6}\selectfont,
left skip=1ex, % for example
nobeforeafter, %no spacing before and after the box etc
halign=center, % horizontal align within box, can be omitted
valign=center, % vertical align within box, can be omitted
colback=black, % black background colour
size=tight, % tight box
colupper=white, % white foreground colour
}
}
\newtcbox{\blackbox}[1][]{%
chapterhead,
#1,
}
%% Chapterstyle
\makechapterstyle{lucknerto}{%
\setlength{\beforechapskip}{-2\onelineskip}%
\setlength{\afterchapskip}{2\onelineskip}%
\renewcommand*{\printchaptername}{}%
\renewcommand*{\chapternamenum}{}%
\renewcommand*{\chapnumfont}{\normalfont\large\sffamily\bfseries}%
\renewcommand*{\afterchapternum}{}%
\renewcommand{\printchaptertitle}{\centering\tcbox[nobeforeafter,halign=center,valign=center,colback=black,size=tight,colupper=white,code={\noexpand\MakeUppercase}]}%\centering\archivo\color{blue}\fontsize{23}{27.6}\selectfont\MakeUppercase}
\renewcommand{\printchaptertitle}[1]{\centering\blackbox{\MakeUppercase{##1}}}%\centering\archivo\color{blue}\fontsize{23}{27.6}\selectfont\MakeUppercase}
}
\chapterstyle{lucknerto} %% enable
%% Pagestyle
\makepagestyle{luckner}%
\makeevenhead{luckner}{}{\small{{\MakeUppercase{book title}}}}{}
\makeoddhead{luckner}{}{\small{{\MakeUppercase{\leftmark}}}}{}
\makeevenfoot{luckner}{\large{\thepage}}{}{}
\makeoddfoot{luckner}{}{}{\large{\thepage}}
\pagestyle{luckner} %% enable
\begin{document}
\chapter{Foobar}
\lipsum[1-20]
\end{document}
Salida con fuente Mikodacs: