latex3 / fontspec

Font selection in LaTeX for XeTeX and LuaTeX
http://latex3.github.io/fontspec/
LaTeX Project Public License v1.3c
277 stars 34 forks source link

Optical sizes with selected font variants #7

Closed wspr closed 8 years ago

wspr commented 15 years ago

From Fermin Otalora:

Dear Will, I had a very interesting weekend browsing the fontspec manual and testing the functionality of the package. Thank you for this nice piece of software, after that, I'm considering to switch from pdflatex+NFSS to xelatex+fontspec. The final test today has been to try fontenc with a really wide family of typefaces. I like the Adobe Minion Pro family so I tried to write a package to handle the 64 fonts there. There are 4 optical sizes, each one featuring normal and condensed versions of 4 weights (regular, medium, semibold and bold). I normally use either

Regular+Semibold+Italic+SemiboldItalic

or

Medium+Bold+MediumItalic+BoldItalic

depending on the kind of docment. So I started with two alternative \setmainfont[Mapping=tex-text, BoldFont=Minion Pro Semibold, BoldItalicFont=Minion Pro Semibold Italic, ]{Minion Pro} and \setmainfont[Mapping=tex-text, BoldFont=Minion Pro Bold, BoldItalicFont=Minion Pro Bold Italic, ]{Minion Pro}

Then I start with the optical sizes. My naive idea was to do something like:

SizeFeatures={
 {Size=-8.4,
    BoldFont=Minion Pro Caption Bold,
    BoldItalicFont=Minion Pro Caption Bold Italic,
    Font=Minion Pro Caption}
 {Size=8.4-13,
    BoldFont=Minion Pro Bold,
    BoldItalicFont=Minion Pro Bold Italic,
    Font=Minion Pro}
 {Size=13-19.9,
    BoldFont=Minion Pro Subhead Bold,
    BoldItalicFont=Minion Pro Subhead Bold Italic,
    Font=Minion Pro Subhead}
  {Size=19.9-,
    BoldFont=Minion Pro Display Bold,
    BoldItalicFont=Minion Pro Display Bold Italic,
    Font=Minion Pro Display}
}

I didn't find anyting similar in the manual and my TeX macro programing is not strong enough to study your code so I just tried some variations. Unfortunately I found that none of them worked... The Font Family ID of all these typefaces is the same so I cannot guess a way to select semibold/bold, caption/text/subhead/display and normal/condensed in an orthogonal way using options in a package. Of course my experience with fontspec is rather limited, but browsing the manual I'm very pesimistic...

Is there a way of doing this kind of magic?

wspr commented 8 years ago

This was resolved in last year's update. (SizeFeature nested inside BoldFeature, etc.)