[XeTeX] misplaced combining diacritical marks
Jonathan Kew
jonathan_kew at sil.org
Sat Aug 28 22:07:12 CEST 2004
On 28 Aug 2004, at 3:44 pm, Bruno Voisin wrote:
> Le 28 août 04, à 13:16, Jonathan Kew a écrit :
>
>> It looks to me as though substitution specifications such as
>>
>> \DeclareFontShape{U}{DoulosSIL}{bx}{n}%
>> {<-> ssub * DoulosSIL/m/n}{}
>>
>> fail when the original font name included spaces. The quotes from the
>> original declaration
>>
>> \DeclareFontShape{U}{DoulosSIL}{m}{n}%
>> {<-> "Doulos\space SIL"}{}
>>
>> are getting lost somewhere, so that the underlying \font command
>> generated when you use bold (or italic, etc) uses the name "Doulos
>> SIL" but without the quotes. That, of course, looks to XeTeX like a
>> request for a font just called "Doulos".
>
> I don't think there are any problems with font substitution (in
> LaTeX's NFSS sense) when the original font name contains a space. For
> example I use customarily now:
>
> \DeclareFontFamily{U}{trebuchet}{}
> \DeclareFontShape{U}{trebuchet}{m}{n}%
> {<-> "Trebuchet\space MS"}{}
> \DeclareFontShape{U}{trebuchet}{m}{it}%
> {<-> "Trebuchet\space MS\space Italic"}{}
> \DeclareFontShape{U}{trebuchet}{bx}{n}%
> {<-> "Trebuchet\space MS\space Bold"}{}
> \DeclareFontShape{U}{trebuchet}{b}{n}%
> {<-> ssub * trebuchet/bx/n}{}
> \DeclareFontShape{U}{trebuchet}{bx}{it}%
> {<-> "Trebuchet\space MS\space Bold\space Italic"}{}
> \DeclareFontShape{U}{trebuchet}{b}{it}%
> {<-> ssub * trebuchet/bx/it}{}
The only "ssub" entries here are for the 'b' (not 'bx') shape, and I'm
guessing you haven't actually exercised those cases. With these
declarations, it works fine for me to say:
... normal text ... \textbf{bold text} ... more normal text ...
but if I insert before this:
\renewcommand{\bfdefault}{b}
so that \textbf will use the non-extended bold shape, then I get a
failure. (Don't know if that's the right LaTeX way to do it, but it
should work.)
Actually, in the case of Trebuchet, the Bold font that's available
isn't a Bold-Extended, so it would be more appropriate to give the
declarations as:
\DeclareFontShape{U}{trebuchet}{b}{n}%
{<-> "Trebuchet\space MS\space Bold"}{}
\DeclareFontShape{U}{trebuchet}{bx}{n}%
{<-> ssub * trebuchet/b/n}{}
If you try it this way, I believe you'll see a similar failure as soon
as you use Bold.
Jonathan
More information about the XeTeX
mailing list