Hacker News new | past | comments | ask | show | jobs | submit login

Yeah, the

> mobile devices don’t use subpixel rendering due to having to suport both vertical and horizontal screen orientations

makes no sense... (well, except that doing it properly would be harder to implement)




"Subpixel" rendering (a.k.a. cleartype) that abuses color fringing to provide higher luminance resolution only works when you have pixels made of three RGB columns. Mobile screens usually use a pentile pattern, so this trick is not just more difficult, it's actually impossible.


Why is that impossible on a Pentile matrix? Fundamentally subpixel antialiasing is just recognizing that the samples for different colour channels are offset from one another, and on that level of generality it doesn’t really matter how those samples are arranged geometrically. If the sample density depends on the channel, well, you’ll have to weight those samples, but still, how is that a problem?

I recognize that fitting that into a scanline rasterizer in a device that doesn’t really have samples arranged in scanlines might be a bit tricky and that there might be less urgency to squeeze the last dregs of resolution out of a ≥300 dpi display than out of a 96 dpi one, but I disagree that this can’t be done.


The reason it works on traditional flat panels is that there is a one to one correspondence between the image data and the panel layout. That is not the case with PenTile displays and there many different subpixel arrangements so it is not possible to predict what subpixels on the display will lit up for a given subpixel in the image data. For best results you also need fonts designed for subpixel rendering so even if subpixel rendering was practical on PenTile displays you would carefully need to tune the fonts for every possible PenTile subpixel arrangement.


Why would you need to "predict" the layout ? Surely the display can communicate such information among all the other characteristics it already does ?

Are you saying that many fonts are specifically designed for "3 column (and specific RGB order ?)" subpixel rendering ?


Well, getting the hardware (manufacturers) to tell you what the hell it (their stuff) is doing is always a problem and even extremely complicated designs and massive marketing efforts like USB only kind of solve the problem for the most common of the common cases, but that’s kind of a truism.

Re you second point, I originally wanted to say something like “fonts aren’t, renderers are”, but in the meantime I read the Raster Tragedy[1] and it seems like the answer to your question is quite literally yes, hinting bytecode is in fact designed for a subpixel grid with a 1:3 aspect ratio (mostly by virtue of the font designer writing and checking it by feel using one). Shoehorning outline fonts and WYSIWYG layout onto low-resolution (≤ 150 dpi or so at 10 pt) displays is that much of a hack, and now I really, really want it to die, all the complaints about elitist designers notwithstanding. (That I find 200- and 300-dpi tablets and phones much more pleasant to work on is a mere coincidence, I assure you.)

[1]: http://rastertragedy.com/


As you mention they're not just offset differently, they're also at different resolutions. In theory you can achieve something similar by rendering at a higher resolution and downsampling with an appropriate filter, but then you're using a completely different algorithm that has nothing to do with the RGB "subpixel" cleartype rendering anymore.


> subpixel antialiasing is just recognizing that the samples for different colour channels are offset from one another

The reason this doesn't work for Pentile displays is because the samples for the different colour channels are not offset from one another.


Also modern mobile phones have super high resolution screens so you don't need to bother.

That's clearly the future for desktops too. At some point I would imagine subpixel hinting gets disabled entirely in desktop OSes but we just haven't got there yet.


> At some point I would imagine subpixel hinting gets disabled entirely in desktop OSes but we just haven't got there yet.

I’m pretty sure it’s gone on macOS.


the future is still far away. On a 17" 4k screen I could still see the difference.


This is unfortunately true. Fonts without cleartype are ugly af on my 4K 27” display and it’s very hard to find smaller (higher DPI) displays that support 4K, >60hz, and adaptive sync.

I suspect that 8K displays will be “good enough” and 16K will finally make this hack obsolete in a few years, but we’re not there yet.


Beauty is in the eye of the beholder. I personally can't stand any form of Cleartype-style rendering -- the color fringing stands out terribly. I vastly prefer a somewhat blurrier but stable grayscale than seeing a red-blue shimmer throughout the text.

Then again, I use a non-AA bitmap font in my editor, so yeah. Get off my lawn!


Eh that’s fair. I’m colorblind like 10% of males (and probably >20% of programmers) and I bet this defect in my eyes make cleartype more bearable. I need that subpixel resolution. Hopefully future displays will satisfy a larger proportion of the population.


I wonder how much of this is due to Windows font rendering currently being so focused on ClearType. At 4K and 27", you don't need subpixel rendering anymore, because your regular pixels are small enough, but you do still need grayscale antialiasing. As far as I can tell, Windows no longer supports grayscale font smoothing — it's subpixel or nothing, and "nothing" still looks bad except for bitmap fonts being displayed at exactly the size they were designed for.


Windows font rendering is surprisingly flexible. When you do the "calubrate cleartype" wizard, it can change many options on a per-monitor basis.

You can also directly edit the registry to change the gamma, greyscale/colour, and subpixel order.


This is one reason why I don't like 4k monitors. The pixel density is just awkward. If I use 1 point = 1 pixel, then the UI is way too small. If I run at 1:2, the UI is too big and the screen is effectively a "retina 1080p". And if I try 1:1.5 then the smoothing artifacts are too visible.

I ended up solving this with a 5k display at 1:1.6. The smoothing artifacts are below my threshold of perception and all looks nice and smooth, while still having a 3200x1800 usable resolution. Downside: cost.


I agree. For me the sweet spot right now is 2560*1440 at 1x scaling, and crisp bitmap fonts wherever possible.


Better yet: HP’s Z27q display. It’s 27 inches and 5K, which is “Retina” to 2560x1440. And I’ve got two of ‘em (…and a 6-head GPU to accommodate their MST cables).

I just wish there was a 16:10 aspect ratio option.


UPDATE: The "real" 5K HP Z27q model (with 30-bit color and 5120x2880 pixels) was released around 2012-2013 and was discontinued by 2016, which is a shame because it's such an amazing monitor: I imagine they discontinued it because 5K operation requires 2 separate and hefty DP1.2 cables in MST mode, which (at the time) the majority of computers just couldn't handle (I don't think Apple Macs can use it at all), and Windows' support for high-DPI was awful-to-mediocre until Windows 10 came out in 2015 - but they've been fantastic for me. Oh, and it was bloody expensive: each one new was about $1500-2000 IIRC.

It seems HP has re-released the Z27q... but in-name-only: the current model is called the "Z27q G3" but it's now just a mid-tier 27-inch 2560x1440 IPS display with no special features beyond DisplayPort 1.4 in-and-out ( https://www.hp.com/us-en/shop/pdp/hp-z27q-g3-qhd-display ). Originally the "q" in Z27q was for "quad" because the 5K (5120x2880) resolution really was 4x 1280x720 (the OG "high def" before 1920x1080 took-over), but now the "q" stands for "QHD" which doesn't mean Quad-HD dimensions, but just 4x the pixels (which isn't impressive at all: as pixel-count increases squared as length increases). Grumble.

Apple still has their own LG-made 5K monitors but they don't play-nice with Windows, and it's even worse with Apple's horrendously priced 6K monitor - but other than that, there's still very few options left for people wanting or needing a large desktop workspace beyond getting a 40-inch 4K display and running it in 96dpi mode.




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

Search: