4

For my purpose is to have some greek text with pdflatex (not xelatex), I don't understand the incoherent (?) behavior of GFS fonts. Consider this example

\documentclass[a4paper]{article}
\usepackage[LGR,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[polutonikogreek,english]{babel}
\usepackage{ebgaramond}

\newcommand{\GR}[1]{%
  {\fontfamily{artemisia}\selectfont\foreignlanguage{greek}{#1}}%
}

\newcommand{\GRE}[1]{%
  {\fontfamily{bodoni}\selectfont\foreignlanguage{greek}{#1}}%
}

\newcommand{\GREE}[1]{%
  {\fontfamily{neohellenic}\selectfont\foreignlanguage{greek}{#1}}%
}

\newcommand{\GREEK}[1]{%
  {\fontfamily{didot}\selectfont\foreignlanguage{greek}{#1}}%
}

\begin{document}
That time of year you mayst in me behold

\GR{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GRE{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GREE{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GREEK{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

That time of year you mayst in me behold
\end{document}

The first three fonts work fine as expected, but the last one not. In fact I receive:

(/usr/local/texlive/2014/texmf-dist/tex/latex/cbfonts-fd/lgrcmr.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/base/ts1cmr.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/ebgaramond/T1EBGaramond-OsF.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsartemisia/t1artemisia.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsartemisia/lgrartemisia.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsbodoni/t1bodoni.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsbodoni/lgrbodoni.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsneohellenic/t1neohellenic.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/gfsneohellenic/lgrneohellenic.fd)

LaTeX Font Warning: Font shape `T1/didot/m/n' undefined
(Font)              using `T1/cmr/m/n' instead on input line 44.


LaTeX Font Warning: Font shape `LGR/didot/m/n' undefined
(Font)              using `LGR/cmr/m/n' instead on input line 44.

[1{/usr/local/texlive/2014/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
(./prova.aux)

LaTeX Font Warning: Some font shapes were not available, defaults substituted.

 ){/usr/local/texlive/2014/texmf-dist/fonts/enc/dvips/gfsneohellenic/neohelleni
cel.enc}{/usr/local/texlive/2014/texmf-dist/fonts/enc/dvips/gfsbodoni/bodoniel.
enc}{/usr/local/texlive/2014/texmf-dist/fonts/enc/dvips/gfsartemisia/artemisiae
l.enc}{/usr/local/texlive/2014/texmf-dist/fonts/enc/dvips/ebgaramond/ebgm_iymie
h.enc}</usr/local/texlive/2014/texmf-dist/fonts/type1/public/ebgaramond/EBGaram
ond12-Regular.pfb></usr/local/texlive/2014/texmf-dist/fonts/type1/public/gfsart
emisia/GFSArtemisia-Regular.pfb></usr/local/texlive/2014/texmf-dist/fonts/type1
/public/gfsbodoni/GFSBodoni-Regular.pfb></usr/local/texlive/2014/texmf-dist/fon
ts/type1/public/gfsneohellenic/GFSNeohellenic-Regular.pfb></usr/local/texlive/2
014/texmf-dist/fonts/type1/public/cbfonts/grmn1000.pfb>

Why didot doesn't compile? Moreover, I'm unsure if I have to load or not LGR. Thanx

=================== ADDENDUM ===================

Reading the relative .fd file, I discovered that the real name is udidot. That seems to solve! However, the font is too big compared to EB Garamond; so I need something as xelatex Scale=MatchLowercase or, in any case, a way to scale the greek font

4

The .fd files hard-code a scaling factor for some reason. So the fonts are scaled to 1.04. You can work around this by using your own definition:

\documentclass[a4paper]{article}
\usepackage[LGR,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[polutonikogreek,english]{babel}
\usepackage{ebgaramond}

\newcommand{\GR}[1]{%
  {\fontfamily{artemisia}\selectfont\foreignlanguage{greek}{#1}}%
}

\newcommand{\GRE}[1]{%
  {\fontfamily{bodoni}\selectfont\foreignlanguage{greek}{#1}}%
}

\newcommand{\GREE}[1]{%
  {\fontfamily{neohellenic}\selectfont\foreignlanguage{greek}{#1}}%
}

\edef\scaleudidot{s*[.5]}% gives tiny text just to make the effect obvious: increase this to something reasonable (1.04 is default; 1 would be unscaled)
\DeclareFontFamily{LGR}{udidot}{}
\DeclareFontShape{LGR}{udidot}{m}{n}{<-> \scaleudidot gdidotrg6a}{}
\DeclareFontShape{LGR}{udidot}{m}{it}{<-> \scaleudidot golgai6a}{}
\DeclareFontShape{LGR}{udidot}{b}{n}{<-> \scaleudidot gdidotb6a}{}
\DeclareFontShape{LGR}{udidot}{b}{it}{<-> \scaleudidot gdidotbi6a}{}
\DeclareFontShape{LGR}{udidot}{m}{sl}{<-> \scaleudidot gdidoti6a}{}
\DeclareFontShape{LGR}{udidot}{b}{sl}{<-> \scaleudidot gdidotbi6a}{}
\DeclareFontShape{LGR}{udidot}{m}{sc}{<-> \scaleudidot gdidotsc6a}{}
\DeclareFontShape{LGR}{udidot}{m}{ui}{<-> \scaleudidot golgaui6a}{}
\DeclareFontShape{LGR}{udidot}{m}{sco}{<-> \scaleudidot gdidotsco6a}{}
\DeclareFontShape{LGR}{udidot}{bx}{n}{<-> \scaleudidot gdidotb6a}{}
\DeclareFontShape{LGR}{udidot}{bx}{it}{<-> \scaleudidot gdidotbi6a}{}
\DeclareFontShape{LGR}{udidot}{bx}{sl}{<-> \scaleudidot gdidotbi6a}{}


\newcommand{\GREEK}[1]{%
  {\fontfamily{udidot}\selectfont\foreignlanguage{greek}{#1}}%
}

\begin{document}
That time of year you mayst in me behold

\GR{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GRE{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GREE{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

\GREEK{Th| p'anta dido'ush|
ka`i >apolambano'ush| f'usei
<o pepaideum'enos ka`i
a>id'hmwn l'egei;}

That time of year you mayst in me behold
\end{document}

will give the ridiculous

tiny didot

Change .5 to something more reasonable according to your needs.

  • Thanx, working fine! Maybe I can create a .fd file to put in my personal three. A last question: I must have \usepackage[LGR,T1]{fontenc}, i.e. LGR declared? thanx! – user41063 Jan 19 '15 at 8:53
  • @user41063 Well you are trying to use the LGR encoding i.e. udidot uses this encoding for Greek. So, yes, you need to pass that option to fontenc. (Or tell LaTeX about the encoding in some other way but I can't think of any reason you'd want to do that.) Is that a problem? And, yes, you could put the replacement code in lgrudidot.fd in your tree. Better still, put it in lgrmydidot.fd and change udidot to mydidot. That way, if you later try to compile a document which uses the GFS package, you will still get the expected output. – cfr Jan 19 '15 at 12:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.