ngerman
在或中的文档中english
,我想使用 来包含一些希腊文本babel
。polutonikogreek
似乎有两种方法可以包含希腊文本:
\textgreek{mikra'iti mouse~ion}
这对于单词和短文以及较长的段落来说似乎都很好
\selectlanguage{polutonikogreek} mikra'iti mouse~ion
使用我的标准设置(参见下文),包括\documentclass[12pt]{article}
,两个选项都会产生丑陋的像素化输出,从技术上讲,它使用 Type 3 字体,这在普通文本中不会发生:
使用 10pt 时不会出现此问题,在这种情况下使用 Type 1 字体。
如何获取polutonikogreek
12Pt(和其他尺寸)的 Type 1 字体?这是我的设置/ MWE:
\documentclass[12pt]{article}
\usepackage[polutonikogreek,english]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\begin{document}
\textgreek{mikra'iti mouse~ion}
\selectlanguage{polutonikogreek} mikra'iti mouse~ion
\end{document}
我使用 MiKTeX 2.9 的 pdfTeX 1.40.11
有趣的是,这个问题甚至出现在greek
手册中的选项babel
,所以这似乎并不是一件小事。不过,这本手册是 1997 年的。
附言:您会注意到,抑扬符也存在问题,但我想在这个问题解决后将其作为单独的问题发布。
答案1
解决这个问题的便宜方法是告诉(pdf)latex 对所有尺寸使用 grmn1000.pfb:
\documentclass[12pt]{article}
\usepackage[polutonikogreek,english]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\DeclareFontFamily{LGR}{lmr}{}
\DeclareFontShape{LGR}{lmr}{m}{n}
{<-> grmn1000}{}
\begin{document}
\textgreek{mikra'iti mouse~ion}
\selectlanguage{polutonikogreek} mikra'iti mouse~ion
\end{document}
您将需要更多\DeclareFontShape
命令来表示粗体等。查看 lgrlmr.fd 中的列表。
另一种可能性是安装全套 cbfonts。据我所知,没有 miktex 包,所以你必须手动安装。从 CTAN 获取 cbfonts.zip(~70MB!),将其解压到 miktex 文件夹之外的某个位置。你将得到一个文件夹
cbfonts/fonts/map
/type1
/....
/tex
其中cbfonts/fonts/map
有一个 cbgreek-full.map。将其移动到cbfonts/fonts/map/dvips
(miktex 似乎直接忽略 fonts/map 中的地图)。
然后在 miktex 设置中将根文件夹添加cbfonts
为新根,如管理员模式(适用于所有用户)或用户模式(仅适用于您)。在命令行上调用initexmf --admin --edit-config-file updmap
(管理员模式)或initexmf --edit-config-file updmap
(用户模式),这将打开 updmap.cfg。添加Map cbgreek-full.map
,保存。然后运行updmap --admin
或updmap
。在此之后,您的示例应该使用 grmn1200.pfb 作为 12pt 希腊字母。
答案2
我看不出你的 MWE 有什么问题。我的设置是 MacTeX (~ TeX Live 2010) 宽度pdflatex
3.1415926-1.40.11 也许你需要更新你的系统?!
我的文件列表
在命令\listfiles
前使用\documentclass
*File List*
article.cls 2007/10/19 v1.4h Standard LaTeX document class
size12.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
babel.sty 2008/07/06 v3.8l The Babel package
greek.ldf 2005/03/30 v1.3l Greek support from the babel system
lgrenc.def 2008/06/17 v2.3 Greek Encoding
english.ldf 2005/03/30 v3.3o English support from the babel system
fontenc.sty
t1enc.def 2005/09/27 v1.99g Standard LaTeX file
lmodern.sty 2009/10/30 v1.6 Latin Modern Fonts
lgrcmr.fd 2008/06/17 v2.3 Greek Computer Modern
t1lmr.fd 2009/10/30 v1.6 Font defs for Latin Modern
lgrlmr.fd 2008/06/17 v2.3 Greek Latin Modern
答案3
似乎有些字体没有正确安装。检查问题不太容易,而且我不使用 MiKTeX(而是使用 TeX Live)。
无论如何,在您的 MiKTeX 目录中搜索这些文件。
这些应该存在,因为您编译文档时没有出现错误:
lgrlmr.fd
在???/tex/generic/babel/
grmn1200.tfm
在???/fonts/tfm/public/cbfonts/
而这可能会缺失:
grmn1200.pfb
at???/fonts/type1/public/cbfonts/
(希腊拉丁现代 12pt 的 Type1 字体)
如果该.pfb
文件不存在或位于错误的位置,您应该cbfonts
使用 MiKTeX 的包管理器重新安装包,或者手动安装。
如果文件没有问题,那么这可能是错误的:
pdftex.map
用???/fonts/map/pdftex/updmap/
一行:grmn1200 grmn1200 <grmn1200.pfb
您可能需要编辑updmap.cfg
并运行updmap
实用程序以使字体有效。
从您的评论和中的包来看CTAN/systems/win32/miktex/
,MiKTeX 似乎没有完整的最新cb
希腊字体,而只有 10pt 的字体。
您最好写信给 MiKTeX 邮件列表来报告问题并请求更新。
而且现在要使用字体的话,必须手动从 CTAN 安装完整字体,对于新手来说确实不容易。
您可以从以下位置获取所有字体:
http://www.ctan.org/tex-archive/fonts/greek/cbfonts-all
提取所有文件并将其复制到 MiKTeX 的 TDS 根目录。
按照 Ulrike Fischer 的建议运行 updmap。关键是添加
cbgreek-full.map
并激活它。用它。