Uncrashing Win7 rasterizer

ilyaz's picture

I suspect I crashed Windows 7 rasterizer. I was investigating how my (silly) font was looking at 8pt/em (in Notepad); now Notepad fonts' selection is quirky when I try to choose this font (it won't show — autogenerated — Italic/Bold on the first time I select the font, only on the second time), and, while the dialogue allows me to choose font size, the Notepad continues to use the same 8pt size.

The other fonts are unaffected (even in the same Notepad session).

Is there any way to clear the rasterizer cache and ask it to start from the scratch? (Short of rebooting…)

HVB's picture

Afraid you have to reboot. The fontcache is held in memory.
First, DELETE the fontcache - c:\windows\SYSTEM32\fntcache.dat
then reboot. With luck, the problem will go away. If it doesn't there's something else wrong!
- Herb

ilyaz's picture

Another ramification (with a different family — from the same super-family of fonts)… Now, as far I can see, GDI shows the font fine, but DirectWrite treats every character as whitespace :-( ;-). The font is monospaced, so there is little chance to distinguish one character from another if there is no glyph shown ;-).

(At least what I can see is that Notepad and Chrome show glyphs, but Firefox and IE do not.) Does it mean that only DirectWrite's rasterizer crashed, or what? Deleting/reinstalling a font without a reboot does not help…

Yet another tidbit: I did not check before whether the font would show in DirectWrite applications; so I do not know whether what I indicate above is time-dependent. But I did check that the font worked in Windows' console fine (looking at a document which included all the characters in the font). — Initially. — Now it does not (without any change to the setup) — it won’t even show in the menu of available console fonts. Is it an indication of (another) crash?

If so, crash in which subsystem? BTW, is console using GDI or DirectWrite? If latter, there might be a correlation between these two anomalies…

ilyaz's picture

Finally, I rebooted, and the condition was cleared (one of two fonts would show again).

Surprisingly, both fonts were deleted before the reboot. Still, one of them “resurrected”, and would show fine (at sizes above the “design” size of 16px); it was picked by FireFox automatically. (I suspect that the reason for the crash of rasterizer [and corruption of some internal structures] was using sizes closer to 8px.) I did not try to experiment with the other one of two fonts…

Is there any way to detect a particular glyph which caused the crash? (Bisecting a font with 55000 glyphs, with reboots in between, may take some guts. ;-) (Not mentioning that the full build process takes 6hours! But I would not need it for just deleting the glyphs — fontforge would take about 20min to Generate() the TTF.)

Syndicate content Syndicate content