[HN Gopher] MacType: Better Font Rendering for Windows
___________________________________________________________________
MacType: Better Font Rendering for Windows
Author : tinbucket
Score : 67 points
Date : 2021-08-01 18:46 UTC (4 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| maxharris wrote:
| no screenshots?
| csnover wrote:
| 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
| behnamoh wrote:
| 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!!
| rubatuga wrote:
| Good way to run into cryptic font rendering bugs.
| nyanpasu64 wrote:
| 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.
| fallenspec wrote:
| 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.
| seltzered_ wrote:
| 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
| yepthatsreality wrote:
| 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 wrote:
| 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 wrote:
| 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
| jbverschoor wrote:
| 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
| crazygringo wrote:
| 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.
| nwallin wrote:
| 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.
| andrewmcwatters wrote:
| 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 wrote:
| 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.
| oneplane wrote:
| 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 wrote:
| Or in other words - software isn't written to be used, it's
| written to be sold
| kzrdude wrote:
| This is a good explanation for why open source projects
| sometimes deliver something more useful - when they are
| written to be used.
| gjsman-1000 wrote:
| 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 wrote:
| 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.
| Toutouxc wrote:
| > 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 wrote:
| 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 wrote:
| 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.
| Causality1 wrote:
| I remind you that Microsoft did in fact release an operating
| system where you couldn't change the desktop background,
| Windows 7 Starter.
| userbinator wrote:
| _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...
| tomc1985 wrote:
| 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 wrote:
| 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 wrote:
| 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 wrote:
| 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.
| X-Cubed wrote:
| 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.
| hsn915 wrote:
| 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.
| Drew_ wrote:
| 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.
| mitemte wrote:
| Similar situation in macOS. Sub-pixel anti aliasing was
| removed in 10.14/Mojave.
| ObscureScience wrote:
| 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.
| tssva wrote:
| 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.
| arsome wrote:
| 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.
| forrestthewoods wrote:
| > 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!
| speeder wrote:
| On CRT screens win8 rendering was crazy blurry for me until I
| installed mactype
| alkonaut wrote:
| Yes but unlike Tabs-vs-spaces or vim-vs-emacs, in this case at
| least ClearType is _right_ and the other one is wrong...
| krona wrote:
| 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.
| [deleted]
| garaetjjte wrote:
| >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)
| aasasd wrote:
| 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.
| didibus wrote:
| 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 wrote:
| 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.
| ghusbands wrote:
| 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 wrote:
| 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 wrote:
| 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 wrote:
| Another of the staggering deficiencies for windows. Right
| next to audio management.
|
| Because audio drivers and colour management aren't important
| ofc....
| [deleted]
| speedgoose wrote:
| 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.
| ivank wrote:
| 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/
| PakistaniDenzel wrote:
| 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.
| ComputerGuru wrote:
| 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.
| toxik wrote:
| 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.
| tokamak-teapot wrote:
| 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.
| keb_ wrote:
| 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 wrote:
| 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 wrote:
| 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.
| fleaaaa wrote:
| You can unload dll in the settings.json
| cshokie wrote:
| 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.
| tambourine_man wrote:
| 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.
| mrtweetyhack wrote:
| WindowsType: Better Font Render for Mac
| jasperry wrote:
| 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.
| syspec wrote:
| 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
| ReactiveJelly wrote:
| 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?
| lxe wrote:
| 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.
___________________________________________________________________
(page generated 2021-08-01 23:01 UTC)