在pdfLaTeX中删除大写字母

问题描述 投票:11回答:4

我想在pdfLaTeX中找到一种方法来生成首字母大写字母(大字母高几行)。我知道有一个dropping包,当与latex + dvips一起使用时效果很好。但是,当与pdflatex一起使用时,结果看起来很难看。

我的源文件是:

\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}

当我编译为

latex drop.tex && dvips -T 12cm,8cm drop.dvi

结果还可以:

dropping-latex-dvips

当我取消注释[pdftex]行并将其编译为

pdflatex drop.tex

结果是:

dropping-pdflatex

谁能建议用pdflatex生产滴盖的更好方法?

pdf latex pdf-generation typography
4个回答
19
投票

非常感谢您的快速回复!实际上,hop和Charlie Martin的评论都很有用。 qazxsw poi是一个很棒的软件包,如果使用可扩展字体,它会起作用。

因此,解决方案是强制使用Type 1 CM字体而不是默认CM并使用lettrine.stylettrine.sty文件建议lettrine.sty

这有效:

\usepackage{type1cm}

这就是结果:

\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}

谢谢!

PS。即使使用pdflatex-type1cm-lettrinedropping也无法正常工作。

UPD。这个例子也适用于type1cm


6
投票

尝试其他字体,一个带缩放;这看起来像PDF没有为cap-W找到足够大的字体并且正在替换。另一种选择是使用dvi-to-PDF翻译。


4
投票

xelatex


3
投票

正如lettrine.sty所提到的,有必要使用可缩放字体,以便为初始字体获得完全正确的大小。如果您更改默认字体,则无需执行任何操作即可进行此操作。

由于历史原因,默认CM字体被加载为“捕捉”到特定大小,而不是以任何缩放大小加载。这是从使用原始Metafont源时开始,当不同的字体大小改变了字形的实际形状(谷歌的光学尺寸为好奇)。

使用CM字体修复此问题的规范解决方案是加载jetxee包。包fix-cm是一个较旧的包,基本上做同样的事情。

© www.soinside.com 2019 - 2024. All rights reserved.