On Thu, Jan 17, 2002 at 01:32:33PM +0200, Dekel Tsur wrote: > If \use_scalable fonts is false, and I try to use a postscript font (e.g. > the cmsy font for symbols), then LyX thinks that the cmsy is a bitmap > font of size 12 points, and will always use this font at this size. > This is because the call XListFonts with the pattern > "-*-cmsy-*-*-*-*-*-*-*-*-*-*-*-*" returns two results: > -bluesky-cmsy-medium-r-normal--0-0-0-0-m-0-adobe-fontspecific > -bluesky-cmsy-medium-r-normal--12-120-75-75-m-0-adobe-fontspecific > If the pattern "-*-cmsy-*" is used, there is only one result: > -bluesky-cmsy-medium-r-normal--0-0-0-0-m-0-adobe-fontspecific > but I understand that this is not a standard pattern.
right. > So we need a way to tell that the result > -bluesky-cmsy-medium-r-normal--12-120-75-75-m-0-adobe-fontspecific > is not a true bitmap font. I think that the 0 above indicates that You're correct afaik, the 0-0 is the standard way to tell. how about this thought patch : 133 // We have matches. Run them through 134 for (int i = 0; i < matches; ++i) { 135 string name(list[i]); 136 lyxerr[Debug::FONT] << "match #" << i << " " 137 << name << endl; 138 sizes[i] = lyx::atoi(token(name, '-', 7)); 139 strings[i] = name; 140 if (sizes[i] == 0) { 141 if (scaleindex == -1) { 142 scaleindex = i; 143 } 144 scalable = true; + sizes.clear(); + sizes[i] == 0; 145 }; 146 }; ? > PS: it might be better to use XListFontsWithInfo call instead of XListFonts. yeah regards john -- "Before seeking vengeance, dig two graves." - Chinese proverb