Hi David, On Sun, Jan 4, 2009 at 11:31 AM, David Alan Hjelle <[email protected]> wrote: > I sent you an email with some screenshots. > > There are two from SubEthaEdit, with and without the "Disable Screen > Fonts" option checked. My opinion is that the one with the option > checked (the one that looks most different from MacVim) is more > readable. It might just be a matter of character spacing, but it might > also be some fiddling with the details of the antialiasing. I'm not > sure.
I've seen these screenshots, however, to my eyes, the only difference is the character spacing. To whom interested in a technical details, I think it can be explained as follow: 1. NSLayoutManager has a usesScreenFonts option. By default it's set to YES. Which means for font sizes less than 16.0 (px), use corresponding screen font to substitute the given font if available. Which is believed to provide better font hinting and metrics information. If this option is on, then glyph advance (character spacing included) will not linearly scaled with font size. If this option is off, then no screen font data will be used, which gives what David observed in SubEthaEdit when "Disable screen fonts" is checked. 2. For a simple program uses NSLayoutManager to render text, we can simply call [someLayoutManager setUsesScreenFonts: NO] to achieve what David wants to have (more liberal character spacing), however, MacVim's text renderer is more complicated than that, in MMTextStorage, cellSize. width is calculated with the -sizeWithAttributes: method of NSString, which has no idea whether we are going to use screenFont or not. 3. I tried -printerFont: method of NSFont, however it seems it cannot provide a different output as we expected. - Jiang --~--~---------~--~----~------------~-------~--~----~ You received this message from the "vim_mac" maillist. For more information, visit http://www.vim.org/maillist.php -~----------~----~----~----~------~----~------~--~---
