[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