TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have to typeset a few Hebrew words in a document, and for this I use xelatex with polyglossia and fontspec (MWE at the bottom). The problem is that this font has a larger x-height than the font I use for the rest of the document (the default). So it looks like this:

enter image description here

The distance between the 1st and 2nd, 2nd and 3rd, and 3rd and 4th line should all be the same.

How can I fix this? Is there a way to pass a default font size to \DeclareTextFontCommand? Then I could set the font size a bit lower so that this problem disappears.

A full MWE (requires the Ezra SIL font):

\documentclass[twocolumn,10pt]{article}

\usepackage{polyglossia}
\setmainlanguage{dutch}
\usepackage{fontspec}
\newfontfamily{\ezra}{Ezra SIL}
\DeclareTextFontCommand{\textezra}{\ezra}

\begin{document}

Nadruk op het in acht nemen van de geboden. Gebruikt net als E \textezra{אֱלֹהִים} tot Ex.~3, maar ook andere combinaties met \textezra{אֵל}. God is nog afstandelijker dan elders en manifesteert zichzelf in glorie. Nog wat meer tekst voor een laatste regel.

\end{document}
share|improve this question
2  
You could just scale down the ezra font: \newfontfamily{\ezra}{Ezra SIL}[Scale=0.8] – Benjamin Jan 24 at 15:31
up vote 7 down vote accepted

Alternatively, you can ask fontspec to scale the fonts according to your main font instead of using a trial-and-error number.

This is done by using either MatchLowercase or MatchUppercase as an argument to the Scale option.

In your case, you can declare your font as:

\newfontfamily{\ezra}{Ezra SIL}[Scale=MatchLowercase]

If you are using other fonts in your document (sans-serif, monospaced...) as well, you can declare the Scale option to be default for all loaded fonts by adding the following line after loading fontspec in your preamble:

\defaultfontfeatures{Scale = {MatchLowercase}}
share|improve this answer

You can scale the font when you create your new font family with an additional font feature:

\documentclass[twocolumn,10pt]{article}

\usepackage{polyglossia}
\setmainlanguage{dutch}
\usepackage{fontspec}
\newfontfamily{\ezra}{Ezra SIL}[Scale=0.8]
\DeclareTextFontCommand{\textezra}{\ezra}

\begin{document}

Nadruk op het in acht nemen van de geboden. Gebruikt net als E \textezra{אֱלֹהִים} tot Ex.~3, maar ook andere combinaties met \textezra{אֵל}. God is nog afstandelijker dan elders en manifesteert zichzelf in glorie. Nog wat meer tekst voor een laatste regel.

\end{document}
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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