Hacker News new | past | comments | ask | show | jobs | submit login
MacType: Better Font Rendering for Windows (github.com/snowie2000)
142 points by tinbucket 47 days ago | hide | past | favorite | 124 comments

It's bizarre that neither the README nor the associated minimal site explains what it does in detail, with screenshots or anything.

I'm assuming this is a modern version of GDI++, which a decade ago brought Mac-style font rendering to Windows, but stopped being maintained a while ago.

For people who aren't aware of the difference, it's essentially that Windows uses heavy font hinting to try to align character strokes with pixel boundaries which produces sharper letterforms at the cost of distortion of the aesthetic personality of the font, while Mac antialiases more to faithfully maintain the accurate letterforms of a typeface, at the cost of being blurrier.

It's basically the tabs-vs-spaces debate of font rendering. Nobody's "right", it's just personal preference. Fortunately, high-resolution "retina" style displays make the distinction much less important, in the same way that it's entirely irrelevant in high-resolution printing.

I never understood _why_ but text rendering on windows has always looked like garbage to me.

It was obviously not the screen resolution or anything, because you can run a linux vm (say, on virtualbox) and the text rendering inside the VM will look much better than the text in windows.

> Nobody's "right", it's just personal preference.

I don't think that's true. macos is clearly better.

Interesting, I personally far prefer the Windows one on 100 DPI displays at least. The blurriness is quite noticeable on OS X and certain Windows applications that attempted to use this style of font rendering.

Sure, it's great on higher DPI screens, but then it makes even less of a difference whichever one you use.

I'd say Microsoft made the right call here.

I actually agree. MS went for readability on standard screens for ages, MacOS went for staying true to the typeface's design and printed look, which was laudable, but IMO a mistake on screens before the dawn of high-DPI.

The most notable case was older versions of iTunes and safari for window which did manage their own font rendering and had MacOS style fonts. To me at least seeing both styles in the one OS looked bad and iTunes was the one that stuck out as being "wrong"

> macos is clearly better.

I disagree.

Yes I do prefer MacOS on high DPI screens but, at low DPI, I prefer Windows. It's about how the edges of characters look, as I was saying here https://news.ycombinator.com/item?id=28031314

Which is a fair enough point, but considering the only screens I own are high DPI, MacType is quite interesting to me

Of course, it all depends on your needs. I'm a fan of repurposing old PCs for less demanding tasks so I have a few of those low DPI monitors around the house.

And here is proof that it is personal preference. I hate the font rendering on macOS and think Windows is clearly better. I even think the font rendering on modern Linux distributions is superior to that on macOS.

I don't agree with that. I think it's pretty clearly about preference. On non retina displays, MacOSX really is blurry, and my preference is clear lines, preferbly without antialiasing, an certainly without subpixel AA. I think pre cleartype Windows, Classic MacOS, or X11 with bitmap fonts looked the best, but was not flexible enough for modern requirements.

I still think bitmap fonts are by far the most readable at smaller sizes on lower dpi displays - you can fit so much more code without having to scroll, and I don't find it any harder to read than large TTF fonts on the same screen.

TTF fonts at small sizes on newer ~200+ dpi screens are even better again though. I'd love to try coding on a high res color e-paper screen.

I'm strongly the opposite direction.

In fact, I even built my own font just to make the Windows font rendering look even more crisp and pixelated like the good old DOS bitmap fonts.

I agree that it looks like sh*t, though. But I still believe the readability improvements are well worth the bad aesthetics.

>"I don't think that's true. macos is clearly better."

It is easier for me to read fonts on Windows. And that is all that really matters to me. Fonts on Mac look fuzzy. This "clearly better" is just your perspective. It is not universally shared.

Yes I do use large 4K monitors but I keep text scale at 100%. Otherwise what's the point. The more text I see when programming the happier I am

I get the impression most of these opinions stem from the Windows XP era. GDI rendering is horizontally hinted; but DirectWrite (as released in Windows Vista) is more linear in the horizontal axis (not sure if its entirely unhinted, but it's certainly a very light touch if any). In fact, there's an argument to be made that mac OS font rendering today is less graphically "accurate" than windows' - take a screenshot from a fairly light font at some huge size, and then scale it down in something like photoshop, vs. scale it down in terms of font size. Note that if you do this on macos then at small sizes the font-renderer adds a little bit of font-weight. On windows it does not. In terms of size, both are quite linear, and I dare say most users would be hard-pressed to even tell the difference.

The difference nowadays is so slim, I doubt it matters - assuming your app uses DirectWrite, and not GDI.

Smaller fonts are easier to read on low dpi screens with windows font rendering - that's the benefit. Assuming a high enough dpi display or just larger font sizes mac rendering is likely to look aesthetically better though (although that is still somewhat personal preference)

It's this form vs function distinction that's important here.

I'm pretty sure since Windows 8 Microsoft has focused on making font rendering look very good on high DPI displays at the cost of making them look poor on more traditional low DPI displays. Windows font rendering looks really good on 4K monitors and laptops with high res screens. Not so much on your typical 1080p-fare.

Strange, in my experience fonts look better on Windows at low DPI, and better on Mac at high DPI. I guess it's personal preferences. To me, at low DPI fonts on Mac look as if they had rough edges. At high DPI however fonts on Windows look like the edges are too soft.

There isn't much difference between windows and macos font rendering at large scales - you can try it in something like browserstack, so you can compare two oses on one screen simultaneously. I mean, it's not imperceptible side-by-side, but edges certainly aren't sharper or softer on either.

Yes, it is true that the difference between Win and Mac at high DPI is much less noticeable than at low DPI.

Similar situation in macOS. Sub-pixel anti aliasing was removed in 10.14/Mojave.

macOS mangles font rendering. They have this awfully-named preference called “font smoothing”, enabled by default, which actually enables glyph dilation, which is basically “ignore what the font author said, and make the font fatter than it should be”. This is the worst thing to happen since sliced bread or something. https://news.ycombinator.com/item?id=23553486 gives more details, including the biggest problem: people using overly light fonts because they use macOS that makes them bearable.

Quite apart from that, my understanding (as a non-user of macOS) is that macOS’s font rendering used to be better than it is now, because they used to do subpixel antialiasing but no longer do, preferring to simplify things because it’s not as valuable on high-resolution displays which they mostly (but not consistently) try to shunt people towards. Mind you, it’s still not useless on high-resolution displays, but definitely not as valuable.

I haven't used MacOS recently, but my feeling on Windows font rendering is that it makes the fonts look too blurry. Once you get to a reasonable DPI it gets better, but my distaste with it started on a fairly low dpi, starting with about windows 7 (I didn't use Vista). Before then the fonts used didn't try too hard to use aliasing, and hence had sharp, single-pixel lines, which are much more satisfying to look at.

This is my experience. Font's on windows look blurry and fonts on MacOS look crisp and clear given the same 4k monitor.

I've also noticed certain Windows programs especially installers have their own resolution and it becomes even more apparent.


I never said it must be liked by every one. I said it's better.

Yes aesthetics are somewhat subjective but that does not mean there's no good answer to what is more aesthetically pleasing. A small minority of people will inevitably disagree. But this does not invalidate the premise.

> For people who aren't aware of the difference, it's essentially that Windows uses heavy font hinting to try to align character strokes with pixel boundaries which produces sharper letterforms at the cost of distortion of the aesthetic personality of the font

Fully agree that it is a personal preference: a slightly distorted shape is something I stop to notice after a day of using the system (I adapt to whatever shape font has unless it is badly distorted like in FreeType with some settings). Blurry fonts on other hand are always look blurry for me.

Personal anecdata: I use MacOS daily and FreeBSD every few days, but when once in a while I boot Windows 7 I always pleasantly surprised how nice and sharp windows fonts look; it is especially noticeable if I compare small font sizes across the systems.

You got it backwards on “I adapt to whatever shape font has” though.

The Mac rendering while a little less sharp means letters always have roughly the same shape, as intended by the typeface authors, while the Windows anti-aliasing distorts them unpredictably depending on where and which pixels they fall onto. Two ‘a’s might look slightly different within the same word because they fall into different alignments on the pixel grid. This is what gives it the wonky appearance.

It's wild to me that on both Windows and OSX that something that is obviously just personal preference is baked into the operating system, with no method for changing it. It's on the same level as having an operating system that didn't let you change your desktop background.

Optionality is one of those things that product managers hate right now, so the likelihood of that appearing if it hasn't already are slim

That said, Windows has highly configurable font hinting/rendering so I'm perplexed as to why this project is a thing

Exactly. Since the beginning of ClearType there's been a tool in Windows to adjust the ClearType hinting. I've used it many times myself. However, as stated before, it's much less necessary with high resolution displays.

Windows is slowly losing configuration. From the very first versions you had complete control over fonts, colours, and sizes of UI elements, then starting with Win8 they removed that, and now in Win10 it's very hard to change something like the font for icons and the (horribly low contrast) taskbar button highlight colour.

It's still possible to force (most of) it to the good old MS Sans Serif and with no antialiasing, the way I like it, but it's getting harder with each new version.

It's configurable but you still can't configure it to anywhere near macOS's rendering - you can turn down hinting from 11 to like 9.5.

> something that is obviously just personal preference

I have a feeling that this exact idea is the reason why most Linux DEs look like crap [to me]. The way fonts look (especially those used in the system UI) is, just like colors or margins, [in my opinion] a matter of design, not just personal preference.

Design is is just what creators do on one end to satisfy the aggregate of personal preference in the target context and audience on the other end.

applies to most open source ux, because noone is allowed to take command which also does a good job of it.

blender is a notable exception, though.

Blender really has turned around in the last few years UX wise. It used to be the go to punching bag when complaining about OSS with bad UX.

See Krita for another OSS project with great UX.

As soon as you realize that changing rasterization strategies alters the bounding box of character textures, and that a lot of UI positions are hardcoded, it makes sense.

Hardcoding UI positions is one of those "you're doing it wrong" sorts of things. At my day job, both the UX/UI folks and the localization folks would have a conniption if I built something with hardcoded UI positions/sizes, or that broke if the size of a string changed. As soon as you have a user with a hidpi display your application is going to look like garbage. As soon as you want to try to support non-English languages all your hardcoded UI work goes out the window.

> As soon as you have a user with a hidpi display your application is going to look like garbage.

And this is what my yearly-or-so foray into Windows shows up - most apps look like garbage. The handling of displays with different DPIs connected to one machine is even worse. This has even been a solved problem _on Linux_ for quite some time.

This likely isn't much of an issue for the operating systems themselves, as they are well globalized and (in my experiences with Windows) adapt fine to RTL and CJK scripts.

Third-party apps, on the other hand, do seem rife with clipped text, even in English at nonstandard DPIs.

Edit: Ah, this was already said by the existing sibling comment.

I believe Windows's approach is localisation not globalisation. Many programmes runs properly only in designed locales, not that programmes run well in any locale.

Chinese/Korean rendered incorrectly on English UI because system hardcoded a font fallback, which put Japanese font first, regardless of how languages are ordered in the Settings. This is largely true for traditional Win32 programmes, like Chrome, Edge, Explorer.exe, etc. However UWP apps using the new UI framework (like Unigram, Intel Command Centre etc) behave correctly if setting Chinese/Korean as secondary language.

It's different on macOS or iOS however, if you set a system locale order as 1. English, 2. Chinese, then Chinese content will render correctly with correct Chinese system font PingFang.

Another issue that is also very important is that Chinese (Simplified or Traditional), Korean and Japanese share amount of the same characters but written differently. That means system must render the glyph in correct variant, like in the example of Source Han Sans


> changing rasterization strategies alters the bounding box of character textures

This is big problem on Windows, where the heavy-handed hinting means actual font size doesn't even come close to being linearly related to requested font size. So you can't even make the simple assumptions such as that the same UI layout will work if you render everything at 2x for a high DPI screen.

There's an Adjust ClearType Text entry in the Start Menu that runs a wizard to tune how the anti-aliasing is configured. It asks you which options looks best.

At the same time, everything could be reconfigured at will, but if you can't provider a consistent UX, that wouldn't help a whole lot with sales and customer binding.

How much you can, or can't modify as an end-user probably relates to the HIG and general usability and transferability as well.

In some ways, there have been cases where you cannot change the background of things, or at least not in an obvious way. I suppose it really depends on the specific user and their user-case to have that matter (or not matter at all).

Or in other words - software isn't written to be used, it's written to be sold

This is a good explanation for why open source projects sometimes deliver something more useful - when they are written to be used.

Yep, but it does depend on what you are selling, or what you 'say' you are selling.

Within UX you can focus on many things, be it an abundance of choice vs. known defaults, aesthetic vs. utilitarianism, CAPEX vs. OPEX etc.

I remind you that Microsoft did in fact release an operating system where you couldn't change the desktop background, Windows 7 Starter.

easily change the background, that is; registry editing and even binary patching are pretty common amongst Windows power users. (Why a power user would end up with Win7 starter is a different question. But a quick search shows that it can be done, they just removed the GUI.)

Edit: for those who don't believe me for whatever reason, https://www.howtoguides.org/change-your-desktop-background-i...

What if I want my window buttons on the bottom instead of the top?

What if I want my taskbar in the middle of the screen instead of the top or bottom?

What if I want textboxes to have flashing orange outlines around them?

What if I want the close button to be blue instead of red?

What if I want the Finder face to be a sad face instead of a smile?

Customizability needs to end at some point. Technical details about font rendering is not important to 99+% of users and is only confusing.

Sure, there should be a line somewhere, but not allowing the user to enable/disable hinting is obviously on the wrong side of the line. If it wasn't, we wouldn't have half the comments on this post opining about Windows vs OSX font rendering.

MacOS > System Preferences> General > Untick 'use font smoothing when available'

This was exactly what irritated me and sent me over to this thread-- there's basically no comparison shots to get an idea of how this should look.

For something that's so visual, you really REALLY need to draw the eyes to something that shows why you need to download it.

Same here. The website is bizarrely uninformative. A Windows logo, but it's called MacType with a Mac-style download button, with zero explanation as to what the product actually does. The tagline "the way texts should be" is terrible English and it looks blurry on my screen, so the idea that this is some kind of improved font rendering is undermined.

I always thought the biggest difference was subpixel vs grayscale anti-aliasing.

Prior to very high pixel density screens, I hated the Mac/android font rendering, mostly due to the migraines caused by my eyes straining to correct for the seemly out-of-focus text blur.

>I always thought the biggest difference was subpixel vs grayscale anti-aliasing.

It's mostly hinting. Windows actually doesn't do subpixel antialiasing in many applications anymore. (such as Start menu or new Settings panel)

Of course it does.

I don't understand why you write an incorrect comment when checking whether GP is right takes literally seconds in front of a Windows box (open start menu, screenshot, enlarge, clearly not using subpixel AA).

It's because that is exactly what I did. And the text in my Start menu has AA? I'd be really surprised if any text doesn't have AA.

> Fortunately, high-resolution "retina" style displays make the distinction much less important


Windows machines are still primarily 1080p. Windows renders font differently that macOS/iOS and is lower resolution. The number of graphics designers that fail to test their font or content on 1080p Windows machines is too damn high!

A side-effect of Windows pinning fonts to pixels is that you can't get arbitrary font sizes and scaling. E.g. I had to use “font-size: 82%” in CSS, because at 80% the text looked bad (pinned to the wrong pixel, and possibly became blurry, can't remember for sure). Likewise, zooming in browsers was a mess.

This was ten years ago, so dunno if anything has changed.

You were likely looking for 81.25% which—with the universally accepted default browser font-size of 16px—equates to a whole 13px (16 * 0,8125).

Afaik 16px only relatively lately became the ‘default size’ on the web. I'm not even sure that ‘css pixels’ were a thing ten years ago. But it's possible.

I’m not exactly sure either but that is around the time I got started with css and I can still recall a lot of these 16px conversion ratios[1], they must have hade some significance.

Edit: now that I’m thinking about it, I (used to) use Spotlight for the conversions which was introduced in Mac OS X 10.4, released in 2005.

[1] 62.5% for 10px, 87.5% for 14px, etc.

I always find Windows the worst of the 3 (comparing to either Gnome or Mac), so they must be doing something wrong there. I remember you can tweak it in control panel though?

Used MacType back in my window 7 days and I remember being quite happy with it. These days when I tried it out on windows 10/11 it does not seem to improve the experience much, perhaps fails to patch some elements of the UI, I don't care enough to investigate.

On Linux or at least on Gnome Tweaks both hinting and anti aliasing can be adjusted according to the preference and they look excellent. Is that not the case with Windows?

On macOS I remember having to explicitly enable font smoothing in Mojave for non retina displays to fix the blurry fonts, But I don't think it did much difference.

On CRT screens win8 rendering was crazy blurry for me until I installed mactype

Yes but unlike Tabs-vs-spaces or vim-vs-emacs, in this case at least ClearType is right and the other one is wrong...

I just switched from Windows to a Mac, and I immediately found that the colors and contrast and the clarity of images and text on the same monitor I connect my laptop too improved.

I wasn't sure if it was just in my head, but something about the rendering in Mac seems better to me. I don't know if they have better calibration for colors and contrast, better anti-aliasing, etc., but I seem to see the screen much better and my eyes don't strain as much.

Have you tried to use the windows ClearType Text Tuner to improve the font rendering? Windows tries to take advantage of subpixels to improve crispness but it can cause color fringing which makes text harder to read. The tuner utility helps with that. You can also disable cleartype entirely to get standard anti-aliasing, which is what macOS does on non-retina screens. Personally I find the macOS way of rendering on standard dpi displays a bit too blurry.

As for images, the only difference I can imagine is a different handling of color profiles.

Update: I totally forgot about the mixed dpi situation. When you hook up a monitor of a different dpi than the laptop (e.g. the laptop is 150% scaling but the monitor is 100%, or vice versa), then only one display will be perfectly crisp for all apps, and that's the primary display at login. Only applications designed to take advantage of the right scaling API's will look crisp on both displays in that case. The other ones will look blurry on the non-primary display. MacOS does tend to handle that situation a little bit better.

There is a fix for apps that are blurry on the non-primary low-res display. Go to the app properties and on the Compatibility tab click the button 'Change high DPI setting' and check 'Override high DPI scaling behavior' option. Make sure 'Application' is selected in the 'Scaling performed by:' drop-down list.

The blurry apps will render a bit bigger on the non-primary low-res display but everything will be crisp.

On later Windows 10 builds, you might want to try "System (enhanced)" mode, it manages to get proper DPI scaling on entirely DPI-oblivious apps.

(It basically does what Microsoft should have done decades ago and changes GDI pixels to be virtual rather than physical.)

The text drawn in most places doesn't match the cleartype tuner (try choosing the most grayscale option each time), and the cleartype in general doesn't take into account screen rotation. Turning off cleartype leaves you with text with odd per-pixel kerning.

Another possibility is that macOS actually does proper color management throughout the entire OS - the Windows shell/desktop is simply not color managed and it's especially irritating when you have a wide color gamut monitor.

It’s laughable that the default photos app in Windows 10 is not color managed, yet the previous Windows Photo Viewer from Windows 7 is…

Another of the staggering deficiencies for windows. Right next to audio management.

Because audio drivers and colour management aren't important ofc....

Audio management better on MacOS?

There is no system level volume mixer, you can't route audio between apps, you can't even monitor an audio output device. To do anything sane with audio on MacOS requires external applications like Loopback or Blackhole or any of the virtual cable applications.

I don't know what he meant with "audio management", but when it comes to music production, MacOS works way better by default, with system-wide low latency audio and multi-client MIDI drivers.

On Windows, you need to buy a dedicated audio card and install 3rd party audio and MIDI drivers, so that you can finally--assuming you bought the correct gear--get almost the same functionality that every Mac has out of the box.

To be fair, core audio is indeed better default system but any trivial music production involves audio interface, I've never seen a person using direct input to macOS. On daily work, it's pretty much same.

Windows used to be horrid when it comed to music production but that was like almost two decades ago. Been using W10 for quite some time and any basics I need is pretty much there.

On the other hand, hardware taxing when gearing up the equipment is insane on apple hardware, that's why I migrated from their ecosystem. It's a huge drawback for many I believe.

The lack of an OS level volume mixer is one of my biggest day to day frustrations with OS X. Linux is really the gold standard for me though, allowing me to shunt applications around across audio devices on a per app basis when most don't include an output selector.

Sure uh huh. Mac is great when I want to open up GarageBand on my M1 Mac Mini that's connected to my TV over HDMI. It yells at me to change the sample rate to 44.1. I can't do that there is no way to do that. I also can not control the volume using keyboard volume or system OS volume. Mac OS is great! Also the HDR is questionable unless you are using an Apple display which I am not.

Edit: basically what I'm getting at here is one is not better than the other and one is not worse than the other every single OS has quirks and honestly you should just be running one of everything in your house if you need it. Make sure to always have an up-to-date latest Mac and run WSL 2 in Windows 10 or 11.

Re: sample rate: you might be looking for the Audio MIDI Setup application.

I connect my Windows 10 thinkpad and my M1 macbook to the same old 1080p external screens, and I prefer the Windows 10 text rendering. The MacOS text rendering looks a bit bolder and a bit more blurry. On the laptops screen, the high pixel density hides the difference.

It looks a bit more blurry because it _is_ a bit more blurry. As another commenter explained a little, Windows' font rendering attempts to 'cut off' at pixel boundaries for straight edges, making characters appear sharper. This is at the expense of being less true to the font design.

I used to prefer the Windows text rendering for this reason, but since so-called 'Retina' screens, everything looks the same to me.


    defaults -currentHost write -g AppleFontSmoothing -int 0
on macOS. That will stop it from making every font more bold than it should be. Mentioned in https://tonsky.me/blog/monitors/

Agreed, on low-res screens, I actually prefer completely unaliased text rendering. It looks jagged and I like the kind of retro vibe it gives.

Yup. Apple fonts look good because they make them all nice and chonky which avoids all the technically correct hinting that preserves actual font shape but doesn’t look as nice in the end that Windows does.

I have a metric compatible clone of the SF Mono font installed on Windows. To get it to look the same as it does on macOS, I have to use the Medium weight to account for this.

Yup definitely agree with this. MacOS rendering is horrendous on normal monitors, it only looks good on 4k monitors, whereas Windows looks decent on everything.

Any before / after screenshots?

I really don't understand when someone makes a project such as this (which seems to have been around for a while), and does not include at least 1 screenshot

There are screenshots in issue [0] shared by users. My MacType profile repo [1] also has screenshots for comparison. You might see differences between screenshots because MacType works with a profile containing customizable configurations which can tweak font rendering behaviors as per demands (and I think this is why the README does not include screenshots).

[0] https://github.com/snowie2000/mactype/issues/557

[1] https://github.com/chawyehsu/mactype-profile#screenshots

Here are some good comparisons. Pity that its not easier to find, been using it for 4 days now and really enjoying it.


Yeah, I thought this was a library for app developers to build on, like Skia.

But people are saying it's meant to inject code into existing processes.

The heck is it?

A bit of context: this software is popular in China for tweaking Windows font rendering of CJK text (the author is also Chinese language-speaking). Hence the project is only fully localized in Chinese & English, and that the README is fairly simple because most people searching for it already know what it is for.

Call me nuts, but I enjoy font-rendering on my Windows machines even compared to my Ubuntu laptop. I legitimately find them sharper and easier to read.

Same here. My primary work machines have all been Macs for years now, I find Mac to be a far better environment than Windows in most respects. The two main exceptions are gaming and font rendering, both of which Windows seems to do much better.

MacType works nice on the surface, but using it feels like a bit of a minefield, because if it interacts incorrectly with one of your programs, it can be an annoyance, and because you've gotten used to the font rendering, you might not immediately realize. When playing Riot's VALORANT, it caused massive lag spikes - and that was before I started worrying about the anticheat.

Indeed. It seems to inject code into every process on the system. That increases the risk to the system more than any typical standalone program.

While MacType's delivery method is wild, Valorant anti-hack is a problem, and normalizing that sort of thing is also a problem.

Riot games is a bunch of arrogant cowboys who think they know better than everyone else, yet somehow other folks have managed to make anti hack systems that are just as effective and much less intrusive.

You can unload dll in the settings.json

Perhaps it was a typo, but actually one can unload dll in the .ini config file.

Yup thanks, my brain farted!

I don’t use Windows anymore (Pop_os and FreeBSD) but never had an issue with how the fonts rendered. The site doesn’t seem to indicate anymore information either.

Windows biases for a sharper text appearance, whereas Mac is much smoother. I can see why some folks prefer the sharp look, but fonts on Windows often look nothing like what the designer intended. Mac is a lot more true to the font design.

Honestly, I prefer the Windows sharpness much to the aesthetic and font design that the author of the font wants. Fonts are a nice for styling a document or website, but in the end the text is designed to be read, not to be art.

If the designer only tested on macOS, I don't think this has anything to do with what the designer "intended". It just shows a lack of testing on other platforms, something that happens quite often (i.e. when dealing with scrollbars [1]).

Personally, I dislike the vague, blurry rendering macOS uses. Macs usually compensate for their weird, blurry, bold rendering with high-resolution screens, but on lower resolutions I really dislike the way fonts look on macOS.

[1]: https://svenkadak.com/blog/scrollbar-blindness

I've been using this for a while and am quite happy with the results. Although, I had to create my own customized profile for the best results.

The effect is esp. obvious when working on Word documents. Somehow fonts are not rendered "thick" enough in Word, and this app takes care of that.

Honestly, I wish MS would do something about blurred fonts in some of the not-so-old programs. Some parts of the Windows OS itself are not rendered correctly!!

I've disabled any subpixel rendering a long time ago. It's annoying, and makes the text look weird. It's not needed for hidpi screens. Ancient tech

I'm glad this is still being developed. I tried it out around the time Windows 8/10 came out, because to my taste the Cleartype settings were much worse than in Windows 7. However, MacType didn't help with Metro programs, or with Word 2013, in which Microsoft switched to a non-subpixel renderer for the document and made everything a jagged mess. What were they thinking?

As another commenter said, moving toward higher DPI makes this less necessary. But I'm still bitter over the years of ugliness I had to suffer through after having such nice Cleartype rendering in Windows XP and 7.

Didn’t see it mentioned yet, so I’m going to drop the link. Joel Spolsky did a very good writeup in 2007 (back when Apple released Safari for Windows) on the different font rendering strategies Mac and Windows take. MacType is, fundamentally, an attempt to implement Mac’s font rendering algorithm on Windows.


Good way to run into cryptic font rendering bugs.

MacType effectively replaces GDI's font renderer (DirectWrite replacement is experimental) with FreeType (used on Linux, not sure about Mac). If you enable ttfautohint ("Auto tuning") instead of bytecode hinting ("Standard tuning"), the fonts may end up with different metrics, and cut off the tops and bottoms of characters. There's a workaround where you can tell MacType to report larger font metrics than GDI would, but this apparently causes rendering errors as well.

Another bug is that MacType makes Sublime Text in GDI font rendering mode chop off the right side of wide CJK characters. Enabling MacType's experimental DirectWrite support makes Sublime Text's DirectWrite text fuzzier, but not chopped off.

One of the reasons I avoided Windows all these years. It seems a little brittle though. Messing with font rendering is such a basic OS feature. I wonder if it could ever be made robust without the help from the oficial vendor.

The best font rendering I’ve ever seen was on a ChromeOS sdpi (1360x600) netbook. I wish I’d known how to achieve that kind of rendering on an ordinary Linux computer…

I use both Windows and Mac daily and I'm not sure that Mac font rendering is always better. Here is my experience:

On low DPI screens (think 24" or 25" at 1080p) I prefer how fonts render in Windows. It seems they have better antialiasing, while Mac fonts look slightly pixelated.

However on high DPI screens (13" Retina, 25" 4K etc.) fonts on Mac look sharper while Windows fonts look a bit "soft". So I prefer Mac on those.

I agree that macOS does the better job on high DPI "retina" screens. On low DPI screens I also prefer how certain fonts render in Windows, specifically, only with fonts that have excellent hinting. Verdana and Georgia look great in low resolution on Windows, but non-standard fonts tend to look like garbage.

Putting this in table form:

           | System fonts | Other fonts  |
   low DPI | Windows      | macOS        |
  high DPI | macOS        | macOS        |

interesting point, initially I did not consider the fact that some fonts might render better than others.

Also, I'm a big fan of the Whirlpool forums ;-)

(I've noticed "dotau" in your username so I had a look at your profile).

Does anybody know of any studies comparing reading performance (speed/comprehension) of various font technologies on different platforms?

I do not prefer this type of font smoothing. In fact I think that windows does a better job at it at certain 4k scaling than Mac does.

Good to see MacType discussed here.

This tool is more important in Chinese/Japanese/Korean environment as CJK glyphs have more strokes per character as compared to Latin languages. Windows's font rendering tends to fit glyph strokes into pixels (tint).

On a low DPI settings (<100), fonts on Windows look more sharp and clear, while on macOS, which discards the bitmaps altogether, the result is blurry (albeit I still prefer to be able to appreciate the original design).

On a higher DPI settings (>130), IMO under normal font sizes (>=10pt) the font has enough pixel realestate to behave like what it was designed. The antialiasing could do its job without relying the heavily hinted result.

Here are some comparisons.

https://pbs.twimg.com/media/EhoCr9GUYAAjzMG?format=webp Left: AppleWin (Safari for Windows) | Right: Chromium | 12px PingFang SC on 200% system scale As you can clearly see, Apple's font rendering makes every glyph clear enough while ensuring every stroke has the same weight, while Chromium, relying on Windows's font rendering makes the font jagged (stroke width varies), baseline not level (遵守 on the 3rd last line, component 辶's bottom is way up)

https://pbs.twimg.com/media/EJUJZL8UYAAC7sC?format=webp&name... Left: AppleWin | Right: Chromium | 15px MS Gothic on 200% system scale MS Gothic has a very large character design, but on the first line of paragraph, 口 from "口周辺" is not reaching the the height it supposed to do, because of Window's approach of fitting that stroke into a line of pixels. And Windows makes the font thinner. This approach apparently ruined every diagonal strokes like 丿 and 丶, making those strokes even fainter.

I have another example of Microsoft Yahei font being drastically better on 200% with MacType but I couldn't find it at the moment.

It's suffice to say that MacType will recovered the font rendering for Windows in 200% scale. However, in 100% scale, it provides fixes when Windows messed up with fonts in some cases when it purposefully fit the strokes into pixels.

https://pbs.twimg.com/media/DrJStIiU0AA01uT?format=webp&name... Safari for Windows, 100% scale https://pbs.twimg.com/media/DrJStMyV4AE_b6f?format=webp&name... Vivaldi, 100% scale Font rendered on Vivaldi is thin, not equal stroke width, with jagged curves. It's miles better on Safari on Windows. Just look at the "产品" on the bottom left, Windows makes the upper 口 in the 品 painfully short in height.

While i appreciate Windows's effort to make glyphs more legible for lower pixel density displays, but at least provide a toggle to turn it off as it literally ruins everything else. Fonts MS used in every Office/Windows/even Windows Terminal showcase video are not hinted font yet the glyphs look pretty legible, and even gorgeous (if you appreciate the curves of Segeo UI) in a 4:2:0 subsampled video, animated, yet average Windows users can't find a way to experience this on daily basis without MacType.

Thanks, the second image was by far the clearest demonstration of rendering issues that are well-beyond just aesthetic preference and verging on actually changing the meaning. The first character of "口周辺" looks as if someone cut out an entire row or two of pixels from where the top stroke is, and once I'd seen that it was easier to spot similar flaws - the first character on each of the lines after the first almost looks worse than the character above it!

no screenshots?

There are screenshots in an issue on their bug tracker[0].

This is an interesting project—Windows’s font rendering is definitely one of the things I dislike about it the most—and they are doing themselves a disservice by not actually explaining clearly what it is or does. I wish Microsoft would provide a font rendering mode like this by default since from reviewing some of the wiki & README it sounds like this is some crazy hack that hooks into apps to intercept calls to DirectWrite and GDI and might break the entire OS.

[0] https://github.com/snowie2000/mactype/issues/557

Glad MacType is still being developed, it's been a software existing for over a decade. And it has been with me for 8 years so far.

Linux is another story. Debian looks different from Ubuntu which looks different than vanilla RHEL

I had listened to an interview with the original cleartype author on a podcast almost a decade ago now.

IIRC He said that when Apple got the cleartype patent (due to the Apple/Microsoft cross patent agreement that happened in the late 90s), they kinda messed up the implementation of cleartype and Windows actually implements it correctly and Mac OS X (now Mac OS) doesn't.

So I find this somewhat amusing.

You might be thinking of the interview with the late Bill Hill (2011), co-creator of ClearType : https://thisdeveloperslife.com/post/2-0-5-typo

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact