Get the top HN stories in your inbox every day.
crazygringo
hsn915
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.
arsome
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.
burnte
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.
Macha
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"
mastazi
> 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
girvo
Which is a fair enough point, but considering the only screens I own are high DPI, MacType is quite interesting to me
tssva
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.
ObscureScience
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.
p1necone
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.
fxtentacle
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.
FpUser
>"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
emn13
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.
p1necone
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.
citrin_ru
> 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.
ricardobeat
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.
nwallin
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.
tomc1985
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
Osiris
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.
userbinator
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.
ubercow13
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.
Toutouxc
> 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.
dragonwriter
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.
aliswe
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.
andrewmcwatters
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.
nwallin
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.
mgdlbp
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.
wtallis
> 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.
X-Cubed
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.
oneplane
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).
ithinkso
Or in other words - software isn't written to be used, it's written to be sold
Causality1
I remind you that Microsoft did in fact release an operating system where you couldn't change the desktop background, Windows 7 Starter.
userbinator
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...
gjsman-1000
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.
nwallin
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.
Angostura
MacOS > System Preferences> General > Untick 'use font smoothing when available'
Firehawke
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.
sossles
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.
krona
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.
garaetjjte
>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)
danybittel
Of course it does.
undefined
forrestthewoods
> Fortunately, high-resolution "retina" style displays make the distinction much less important
Ahhhhhhhhhhhhhh.
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!
aasasd
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.
graftak
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).
aasasd
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.
nsonha
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.
speedgoose
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.
tokamak-teapot
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.
ivank
Try
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/toxik
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.
ComputerGuru
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.
PakistaniDenzel
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.
didibus
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.
Joeri
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.
vborovikov
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.
kmeisthax
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.)
ghusbands
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.
ascom
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.
1--6zVa-E
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…
breakfastduck
Another of the staggering deficiencies for windows. Right next to audio management.
Because audio drivers and colour management aren't important ofc....
hashhar
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.
Macha
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.
navjack27
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.
undefined
syspec
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
chawyehsu
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
c-c-c-c-c
Here are some good comparisons. Pity that its not easier to find, been using it for 4 days now and really enjoying it.
ReactiveJelly
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?
artemiszx
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.
toastercat
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.
DamnInteresting
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.
pityJuke
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.
cshokie
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.
errantspark
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.
yepthatsreality
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.
blehn
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.
jeroenhd
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.
behnamoh
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!!
jbverschoor
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
jasperry
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.
uranusjr
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.
https://www.joelonsoftware.com/2007/06/12/font-smoothing-ant...
Get the top HN stories in your inbox every day.
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.