Take the 2-minute tour ×
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.

I'm using the Latino Elongated LET font with XeTeX and I can't get small capitals to display:

\documentclass{scrbook}

\usepackage{fontspec}
\newfontfamily\lelong{Latino Elongated LET}
\newfontfamily\lelongsc[SmallCapsFeatures={Letters=SmallCaps}]{Latino Elongated LET}

\begin{document}

\lelong \scshape Small capitals

\lelongsc \scshape Small capitals

\newfontinstance\scshape[Letters=SmallCaps]{Latino Elongated LET}

\lelong \scshape Small capitals

\end{document}

gives me three lines with normal characters:

small caps failure

How can I get small capitals? It is possible that this font is lacking sc functionalities?

Note:

The third attempt (\newfontinstance) gives a warning in the logs:

Package fontspec Warning: OpenType feature 'Letters=SmallCaps' (+smcp) not available for font "Latino Elongated LET Plain:1.0/ICU" at 10.95pt, with script 'Latin', and language 'Default'.

share|improve this question
1  
I get the message that small caps are not present in the font. You can't have what is not in the font. –  egreg Jun 8 '11 at 15:15
    
have you checked if the font really has the small caps feature with a otfinfo -f /path/to/font? –  henrique Jun 8 '11 at 15:15
    
@egreg: OK, so maybe I need another Latino Elongated font? –  ℝaphink Jun 8 '11 at 15:18
    
@henrique: the file is a ttf, so I can't run that. Is there an equivalent for true type/T1 fonts? –  ℝaphink Jun 8 '11 at 15:19
    
@Raphink a few truetype fonts do have opentype features that can be displayed with otfinfo... If it doesn't, the font simply lacks the functionality and you can't have smallcaps with it. (Some commercial fonts come in bundles with a separated file for smallcaps... if that is the case, you'll need to create a \newfontface to use it.) –  henrique Jun 8 '11 at 15:30
show 1 more comment

3 Answers

up vote 4 down vote accepted

The font is a TrueType font that doesn't have "small caps" functionality. That is, the font just doesn't have any small caps.

share|improve this answer
    
Are you sure it doesn't contain small caps in a private Unicode area? –  Andrey Vihrov Jun 8 '11 at 16:14
    
@Andrey: that was actually my question, I'd love to know how to know that. –  ℝaphink Jun 8 '11 at 20:01
1  
@Raphink Open the font with fontforge or another utility (I have OTM_Light) and look at the glyphs. I can confirm that there is nothing in the PUA. –  egreg Jun 8 '11 at 20:12
    
OK, thanks. I don't have fontforge. I thought fontconfig had a tool for that, maybe fc-cat can tell me this? –  ℝaphink Jun 8 '11 at 20:17
    
@Raphink fc-cat only lists fonts known to the font library of fontconfig. Look at fontforge.sourceforge.net –  egreg Jun 8 '11 at 20:22
add comment

You can cheat:

\newcommand\fakesc[1]{\scalebox{0.7}{\MakeUppercase{#1}}}

Some things to note:

  • This requires the graphicx package
  • Uppercase letters in the fakesc scope get lost. (Although I'm sure some TeX-fu can fix that...
  • The actual amount of scaling should probably depend on the exact font used...
share|improve this answer
    
I've actually cheated already in another way. Eventually, I'll see about purchasing the OTF version of the font which I believe has proper sc. –  ℝaphink Jun 8 '11 at 20:02
add comment

I found a cleaner solution:

  • open the TTF in fontforge;
  • create small caps;
  • save the font as OTF;
  • use the new font;
  • remember to not distribute non-free modified fonts on github ;-)
share|improve this answer
    
So long as the font licence allows you to do this. –  egreg Jul 20 '11 at 9:19
    
The font doesn't allow me to redistribute, but can it prevent me from making private changes? Isn't that the same as stretching it in inkscape for example? –  ℝaphink Jul 20 '11 at 9:30
add comment

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.