You know the rule - for every feature (15) users want, there are (3) that don't want it.

I'm referring to this completed feature-request: Disable ClearType (subpixel rendering) for image-based flair

As Hans Passant comments there:

Hmm, not so sure. Text doesn't look nearly as good with just regular anti-aliasing. Should it look sucky for everybody or just those few that have non-standard hardware?

On standard monitors, it is really a significant difference without ClearType, see this screenshot with flairs on the blog, where Josh K's flair is still rendered the old way:

alt text

So I for one would like to have the option to display my flair with ClearType on, like it was before.

You could add an optional parameter to the image URL. If there are more users that don't want it, the default would be without ClearType (like it is now), and the option would be "ClearType on"; if not, vice versa.

From http://en.wikipedia.org/wiki/ClearType#Display_requirements:

ClearType and allied technologies require display hardware with fixed pixels and subpixels. More precisely, the positions of the pixels and subpixels on the screen must be exactly known to the computer to which it is connected. This is the case for flat-panel displays, on which the positions of the pixels are permanently fixed by the design of the screen itself.

Almost all flat panels have a perfectly rectangular array of square pixels, each of which contains three rectangular subpixels in the three primary colors, with the normal ordering being red, green, and blue, arranged in vertical bands. ClearType assumes this arrangement of pixels when rendering text.

ClearType does not work properly with flat-panel displays that are operated at resolutions other than their “native” resolutions, since only the native resolution corresponds exactly to the actual positions of pixels on the screen of the display.

If a display does not have the type of fixed pixels that ClearType expects, text rendered with ClearType enabled actually looks worse than type rendered without it. Some flat panels have unusual pixel arrangements, with the colors in a different order, or with the subpixels positioned differently (in three horizontal bands, or in other ways).

  • 6
    It's not interesting whose flair is rendered, it's interesting whose monitor it's rendered on. – balpha Sep 25 '10 at 8:40
  • @balpha - Well, Josh K's flair should look better on standard monitors, and worse on the rest. So it's helpful for everyone to spot the differences. – Dan Dumitru Sep 25 '10 at 8:48
  • 4
    You used a .jpg picture to discuss font rendering. Your point is automatically moot. -1 – badp Sep 25 '10 at 9:00
  • @badp - Just because I don't know much about image rendering doesn't mean I don't notice the differences. I think my request to make this optional is pretty reasonable. I'm not debating here renderings, I'm just expressing my desire to have it 'the other way'. – Dan Dumitru Sep 25 '10 at 9:08
  • @Dan We're talking about subpixel rendering here - please use a lossless format like .png to make your point. :) – badp Sep 25 '10 at 9:09
  • 1
    @badp - You could have said it like this from the first comment. Fixed. – Dan Dumitru Sep 25 '10 at 9:17
  • 1
    @dan, JPEG ONLY!!! NO THINKING REQUIRED!! ;-) – Arjan Sep 25 '10 at 9:24
  • 1
    @Arjan Not really, at 90%-100% quality there should be no perceptual difference between the two. – Yi Jiang Sep 25 '10 at 12:45
  • 3
    I'm not using any flair, but what about requesting cancellation of earlier methods of sharing flair are deprecated and will go away eventually? – Arjan Sep 25 '10 at 12:46
  • 1
    @YiJ, it was bad enough to notice. Besides, at high enough qualities, .jpg files become larger than .png files. – badp Sep 25 '10 at 20:16
  • 1
    I agree that the text look very ugly on these new flares. I think it was much better before, when text was produced, not a bitmap image with text on it... – Andreas Rejbrand Sep 25 '10 at 23:37
  • 1
    For those who want text, like maybe @Andreas, just create a feature request to not deprecate the old JavaScript way? (That would, of course, only apply to one's own flair. You might still see others use the image-based flair.) – Arjan Sep 26 '10 at 6:52
  • (@Dan, maybe explain why you quoted the Wikipedia article? I know, you bolded some text, and mentioned "90% of their visitors" in the comments. But what about making explicit that that's why you quoted? Maybe I'm a bad reader, but before I noticed the emphasis was yours, I figured that the quote was actually a reason to NOT enforce ClearType, making me wonder why you quoted that.) – Arjan Sep 26 '10 at 6:59
  • @Arjan - Yes, I quoted to show the part with 'Almost all flat panels have a perfectly rectangular array of square pixels', and then some more context to be fair. I don't think it needs more emphasis than bolding those words. It's about the old type of debate - if you could make your website look 10/10 for 90% of your visitors and 7/10 for those who have IE6 vs to make it look 9/10 for all of your visitors, what would you choose? I think it's nice to be able to have an option in situations like this, and I for one would clearly go for a better experience for most of my visitors. – Dan Dumitru Sep 26 '10 at 8:28
  • See also SVG Flairs (In Addition To PNG Flairs)? – Arjan Sep 26 '10 at 17:00

I propose flair is rendered with Windows' System font at nine point, making all matters of smoothing, antialiasing, rendering, kerning, spacing, width, ligatures, bolding ... completely moot.

But seriously...

Do you really want your flair to look like this? This is what subpixel font rendering looks like when you are using a display with a different pixel arrangements. Those poor souls must be leading a terrible life, lacrimating at every single screenshot posted on the web :)

Please do not implement this.

  • 2
    In alternative, Fixedsys could be considered! – badp Sep 25 '10 at 9:18
  • I was a bit confused. First, I did not understand that your example is actually a reason to NOT implement this request. And I even thought subpixel issues did not apply to images, thinking that once text has been rendered into an image correctly, the image should be fine on all screens. But: I was wrong, and now know that pixel arrangements can even change when rotating the screen of a mobile device or tablet, and that images that were rendered assuming some specific antialiasing will indeed look bad on some devices. +1 for NOT expecting visitors to have some specific pixel arrangement. – Arjan Sep 25 '10 at 13:18
  • @Arjan: rolling back, I didn't use ClearType there, but a "competing" subpixel rendering engine :) (the point still stands) – badp Sep 25 '10 at 14:54
  • 1
    Ah, sorry about my erroneous edit! Your new "Please do not implement this" makes things clear, and you and @balpha are right: one cannot know, nor control, what type of screens website visitors use. – Arjan Sep 25 '10 at 15:27
  • 2
    You didn't get me. I am just proposing to make this optional. I for one prefer that 90% of the people seeing my flair would see it better than regular, and 10% would see it worse than regular. If you prefer all of them seeing it the same way, OK, that's your preference. What I'm requesting is that this thing would be made optional (a parameter to the image URL). – Dan Dumitru Sep 25 '10 at 19:36
  • 1
    I think what I'm asking is reasonable. Now, it's a feature request, and of course the option will only be implemented if a lot of people want it. But I don't see why I have to discuss so much and defend the request to implement an option. – Dan Dumitru Sep 25 '10 at 19:44
  • 1
    @Dan, when you say "You could add an optional parameter to the image URL" it means you want subpixel rendering to be your option, not the users' options. The picture shows what your choice of subpixel smoothing may translate to on the users' picture. However the problem only happens on some of the users' monitor. If anything else, it should be the users' option to turn subpixel smoothing on, not yours. The problem isn't what you like best, the problem is what looks best on the users' monitor. – badp Sep 25 '10 at 20:14
  • 3
    The only way I can see this making any sense is if the browser and/or server can detect if the current user's display is capable of showing sub-pixel rendered fonts, like ClearType or similar, and then, and only then, use those capabilities when making the image. Otherwise, you're going to say "I want it to be sub-pixel rendered" once and for all, with your URL parameter, and then everyone that doesn't have such a display will not like the results – Lasse V. Karlsen Sep 25 '10 at 20:21
  • 1
    Note that normal smoothing should not have any negative impact on displays, as you're simply doing normal anti-aliasing. If someone has a display that mangles that, they need to fix their drivers, so that should be fine. – Lasse V. Karlsen Sep 25 '10 at 20:24
  • @badp - Yes, I want it to be my option. It's my flair, I display it on my blog, and I want to decide how it is rendered. Everyone would choose then how to embed their flair on their site. Some would prefer a nice and clear flair display for 90% of their visitors, some would prefer a regular one but looking the same for all of them. – Dan Dumitru Sep 25 '10 at 20:40

I see the reasons for not implementing clear-type images (= it just doesn’t work) but I also have to say that I absolutely see the point: font rendering without clear-type just looks horrible, in particular when it’s used right next to a properly rendered text.

So: I would never consider using the non-clear-typed images, making them at least as useless as the clear-typed variant.

Of course, there’s a ridiculously easy solution to this conundrum. Get rid of the image flairs and revert to JSON/JavaScript includes. They are easy to use, more accessible (text in images? really?), just look better (but then, one of the flair styles is “hot dog stand” so this point is moot) and are customizable. In summary: using images is the worst of all possible solutions.

Providing image-based flair only? Big mistake.

I’m not taking the user’s perspective here, either: Flairs are essentially free advertisement for Stack Overflow and I was serious when I said that I won’t display an image-based flair on my website (in fact, I use it in continuous text at the moment). Less adoption essentially means less ads for Stack Overflow. So I think the easiest way to expand adoption is to give users the choice, not dictate one format.

I guess the Stack Overflow API can be adapted easily enough to my particular use-case but wasn’t the point of the flair to make this simpler?

  • We have the StackExchange API now. If I'd have a good hoster I'd bring Flair 1.0 back. :D – rightfold Feb 6 '11 at 12:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .