Drop caps en pdfLaTeX
-
03-07-2019 - |
Pregunta
Quiero encontrar una forma de producir mayúsculas (letras iniciales grandes con varias líneas de altura) en pdfLaTeX. Sé que hay un paquete dropeado
que funciona bien cuando se usa con latex
+ dvips
. Sin embargo, cuando se usa con pdflatex
el resultado se ve feo.
Mi archivo fuente es:
\documentclass[12pt]{article}
% for pdflatex file.tex # dropping is ugly
% \usepackage[pdftex]{graphicx}
% \usepackage[pdftex]{dropping}
% for latex file.tex ; dvips -T 12cm,8cm file.dvi # dropping is OK
\usepackage[dvips]{graphicx}
\usepackage{dropping}
\usepackage[papersize={12cm,8cm},
left=0.5cm,right=0.5cm,
top=0.5cm,bottom=0.5cm]{geometry}
\begin{document}
\dropping[-3pt]{3}{W}ith a drop cap, the initial sits within the margins and
runs several lines deep into the paragraph, pushing some normal-sized text off
these lines. This keeps the left and top margins of the paragraph flush.
In~modern browsers, this can be done with a combination of HTML and CSS
by~using the float: left; setting.
\end{document}
Cuando lo compilo como
latex drop.tex && dvips -T 12cm,8cm drop.dvi
el resultado es correcto:
Cuando descomprimo [pdftex]
líneas y compilo como
pdflatex drop.tex
los resultados son:
¿Alguien puede sugerir una mejor manera de producir mayúsculas con pdflatex
?
Solución
Muchas gracias por las respuestas rápidas! En realidad, los dos comentarios de Hop y Charlie Martin fueron útiles. lettrine.sty
es un paquete fantástico, y funciona si se usan fuentes escalables.
Por lo tanto, la solución fue forzar las fuentes Type & nbsp; 1 CM en lugar de las CM y usadas lettrine.sty
. La documentación de lettrine.sty
sugiere a \ usepackage {type1cm}
.
Esto funciona:
\documentclass[12pt]{article}
% works with pdfLaTeX
\usepackage{type1cm} % scalable fonts
\usepackage{lettrine}
\usepackage[papersize={12cm,4cm},
left=0.5cm,right=0.5cm,
top=0.5cm,bottom=0.5cm]{geometry}
\begin{document}
\lettrine[lines=3,slope=-4pt,nindent=-4pt]{W}{ith} a drop cap, the initial sits
within the margins and runs several lines deep into the paragraph, pushing some
normal-sized text off these lines. This keeps the left and top margins of the
paragraph flush. In~modern browsers, this can be done with a combination of
HTML and CSS by~using the float: left; setting.
\end{document}
Y este es el resultado:
¡Gracias!
PS. droping
no funciona correctamente incluso con type1cm
.
UPD. Este ejemplo también funciona con xelatex
.
Otros consejos
Prueba con otra fuente, una con escala; Esto parece que el PDF no está encontrando una fuente lo suficientemente grande para la tapa-W y está sustituyendo. La otra opción es utilizar una traducción de dvi a PDF.
Como se menciona en jetxee , es necesario usar una fuente escalable para obtener exactamente el tamaño correcto para la inicial. Si cambia la fuente de la predeterminada, esto ocurrirá sin que tenga que hacer nada.
Por razones históricas, las fuentes CM predeterminadas se cargan en " snap " a tamaños específicos, en lugar de poder cargarse en cualquier tamaño escalado. Esto es desde el momento en que se utilizaron las fuentes originales de Metafont, cuando un tamaño de fuente diferente cambió la forma real de los glifos (Google tamaños ópticos para los curiosos).
La solución canónica para solucionar este problema con las fuentes CM es cargar el paquete fix-cm
. El paquete type1cm
es un paquete antiguo que básicamente hace lo mismo.