# HG changeset patch # User Jason Rumney # Date 1005400262 0 # Node ID f288d1d604a7312359e442cd452c3e7ba1172082 # Parent 83db614759e5dee5338b4e3dbe5ceb1a8b0451d2 (enum_font_cb2): Use leading @ on face name to detect vertical fonts. Allow them if face name is explicitly specified. Do not give up if we find a font that cannot be converted to an xlfd. diff -r 83db614759e5 -r f288d1d604a7 src/w32fns.c --- a/src/w32fns.c Sat Nov 10 13:30:05 2001 +0000 +++ b/src/w32fns.c Sat Nov 10 13:51:02 2001 +0000 @@ -6672,10 +6672,16 @@ int FontType; enumfont_t * lpef; { - /* Ignore struck out, underlined and vertical versions of fonts. */ - if (lplf->elfLogFont.lfStrikeOut || lplf->elfLogFont.lfUnderline - || lplf->elfLogFont.lfEscapement != 0 - || lplf->elfLogFont.lfOrientation != 0) + /* Ignore struck out and underlined versions of fonts. */ + if (lplf->elfLogFont.lfStrikeOut || lplf->elfLogFont.lfUnderline) + return 1; + + /* Only return fonts with names starting with @ if they were + explicitly specified, since Microsoft uses an initial @ to + denote fonts for vertical writing, without providing a more + convenient way of identifying them. */ + if (lplf->elfLogFont.lfFaceName[0] == '@' + && lpef->logfont.lfFaceName[0] != '@') return 1; /* Check that the character set matches if it was specified */ @@ -6728,7 +6734,7 @@ /* TODO: List all relevant charsets if charset not specified. */ if (!w32_to_x_font (&(lplf->elfLogFont), buf, 100, charset)) - return 0; + return 1; if (NILP (*(lpef->pattern)) || w32_font_match (buf, XSTRING (*(lpef->pattern))->data))