Hello everyone,
I'm totally new to this list, so please pardon me if it's the wrong place to discuss my idea and please point me to a more suitable list.
Today, while reading my morning load of news I've come across a Wikipedia article[1] with some embedded LaTeX formulae, used within a table. The table header on that page has background of a distinct color which makes formula images look ugly. Sorry, the article is in Russian and I didn't find an English counterpart to demonstrate the issue, but by looking at the table you should get the idea.
My first thought was "What if we could eliminate that white background in favor of alpha channel?" Then it will look equally well no matter what background it is put.
As I have some experience with PNG images and alpha channel stuff, I've wrote this simple half-page program (attached) in C++ to transform any grayscale PNG image containing black-on-white text to image with alpha channel added, so it display nicely on any background (except black :). The program uses PNG++, a C++ wrapper library[2] around libpng.
A mockup of what it'll look like if we replace currently used formula image in the table header, with an image transformed by my program is attached as well. I think that visual improvement is immediately obvious.
Now, thanks for your patience if you read till here. :) I'd like to know if there any drawbacks[3] to the proposed approach? Was it by design that white background is preserved, if so why and can this be refined somehow?
-- Regards, Alex
[1] http://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B9%D1%82%D1%80%D0%BE%D0%BD%D0%B... Note: scroll down one page to see the table
[2] http://www.nongnu.org/pngpp/
[3] It needs to be tested with IE6, as it is well known for problems with transparent PNGs.
What happened here? I thought the list didn't accept attachments!
- Mark Clements (HappyDog)
"Alexander Shulgin" alex.shulgin@gmail.com wrote in message news:729abac10911170053t1c3147e5q49d2b8ac2b6c140b@mail.gmail.com...
Hello everyone,
I'm totally new to this list, so please pardon me if it's the wrong place to discuss my idea and please point me to a more suitable list.
Today, while reading my morning load of news I've come across a Wikipedia article[1] with some embedded LaTeX formulae, used within a table. The table header on that page has background of a distinct color which makes formula images look ugly. Sorry, the article is in Russian and I didn't find an English counterpart to demonstrate the issue, but by looking at the table you should get the idea.
My first thought was "What if we could eliminate that white background in favor of alpha channel?" Then it will look equally well no matter what background it is put.
As I have some experience with PNG images and alpha channel stuff, I've wrote this simple half-page program (attached) in C++ to transform any grayscale PNG image containing black-on-white text to image with alpha channel added, so it display nicely on any background (except black :). The program uses PNG++, a C++ wrapper library[2] around libpng.
A mockup of what it'll look like if we replace currently used formula image in the table header, with an image transformed by my program is attached as well. I think that visual improvement is immediately obvious.
Now, thanks for your patience if you read till here. :) I'd like to know if there any drawbacks[3] to the proposed approach? Was it by design that white background is preserved, if so why and can this be refined somehow?
-- Regards, Alex
[1] http://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B9%D1%82%D1%80%D0%BE%D0%BD%D0%B... Note: scroll down one page to see the table
[2] http://www.nongnu.org/pngpp/
[3] It needs to be tested with IE6, as it is well known for problems with transparent PNGs.
On Tue, Nov 17, 2009 at 3:53 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
Today, while reading my morning load of news I've come across a Wikipedia article[1] with some embedded LaTeX formulae, used within a table. The table header on that page has background of a distinct color which makes formula images look ugly.
See bug:
https://bugzilla.wikimedia.org/show_bug.cgi?id=8
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore. We're still stuck with the fact that IE6 doesn't support alpha channels, though -- we could make the fully-transparent parts of the background transparent, but I don't see how we could avoid aliasing effects on sane browsers without making things look extremely ugly on IE6.
On Tue, Nov 17, 2009 at 4:11 PM, Aryeh Gregor <Simetrical+wikilist@gmail.comSimetrical%2Bwikilist@gmail.com
wrote:
On Tue, Nov 17, 2009 at 3:53 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
Today, while reading my morning load of news I've come across a Wikipedia article[1] with some embedded LaTeX formulae, used within a table. The table header on that page has background of a distinct color which makes formula images look ugly.
See bug:
https://bugzilla.wikimedia.org/show_bug.cgi?id=8
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore. We're still stuck with the fact that IE6 doesn't support alpha channels, though -- we could make the fully-transparent parts of the background transparent, but I don't see how we could avoid aliasing effects on sane browsers without making things look extremely ugly on IE6.
Aren't there various workarounds using JS and filters for IE6?
Marco
On Tue, Nov 17, 2009 at 10:43 AM, Marco Schuster marco@harddisk.is-a-geek.org wrote:
Aren't there various workarounds using JS and filters for IE6?
Yes, but my understanding is that they perform poorly.
On Tue, Nov 17, 2009 at 11:07 AM, Daniel Schwen lists@schwen.de wrote:
So you'd rather have it look crappy for everybody rather than just for IE6 users? That doesn't make a lot of sense to me.
I didn't say that. But we would have to evaluate the impact of our changes on IE6, which is like 15% of Wikipedia's audience last I checked. In particular, just using alpha channels without regard to IE6 would greatly degrade display in IE6, but improve appearance in other browsers only slightly (since in almost all cases, equations are on a white background anyway).
The obvious first step is to use binary transparency for the white background, which won't hurt IE6 or any other browser. It will leave a somewhat ugly white halo around the text in non-IE6 browsers if it's not on a white background, but that's probably better than an entire block of pure white as we have now.
On Tue, Nov 17, 2009 at 10:11:13AM -0500, Aryeh Gregor wrote:
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore.
There's also the potential issue of people who set their stylesheets to something like green-on-black (e.g. [[en:MediaWiki:Gadget-Blackskin]]) instead of black-on-white. Unless the plan is to make the formula text color a user preference?
On Tue, Nov 17, 2009 at 1:05 PM, Brad Jorsch b-jorsch@northwestern.edu wrote:
There's also the potential issue of people who set their stylesheets to something like green-on-black (e.g. [[en:MediaWiki:Gadget-Blackskin]]) instead of black-on-white. Unless the plan is to make the formula text color a user preference?
It's unlikely we'd do that, so you have a good point.
On Tue, Nov 17, 2009 at 20:07, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Tue, Nov 17, 2009 at 1:05 PM, Brad Jorsch b-jorsch@northwestern.edu wrote:
There's also the potential issue of people who set their stylesheets to something like green-on-black (e.g. [[en:MediaWiki:Gadget-Blackskin]]) instead of black-on-white. Unless the plan is to make the formula text color a user preference?
It's unlikely we'd do that, so you have a good point.
Yeah, I see the whole image-based approach can be really problematic.
Have anyone considered using jsMath instead? At least they claim compatibility with really wide range of browsers/versions: http://www.math.union.edu/~dpvc/jsMath/browsers.html
-- Alex
On Wed, Nov 18, 2009 at 09:50, Alexander Shulgin alex.shulgin@gmail.com wrote:
On Tue, Nov 17, 2009 at 20:07, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Tue, Nov 17, 2009 at 1:05 PM, Brad Jorsch b-jorsch@northwestern.edu wrote:
There's also the potential issue of people who set their stylesheets to something like green-on-black (e.g. [[en:MediaWiki:Gadget-Blackskin]]) instead of black-on-white. Unless the plan is to make the formula text color a user preference?
It's unlikely we'd do that, so you have a good point.
Yeah, I see the whole image-based approach can be really problematic.
Have anyone considered using jsMath instead? At least they claim compatibility with really wide range of browsers/versions: http://www.math.union.edu/~dpvc/jsMath/browsers.html
Oops, but here comes a great deal of caveats with MSIE (version unspecified on the page): http://www.math.union.edu/~dpvc/jsMath/bugs.html
So this needs closer research.
-- Alex
On Wed, Nov 18, 2009 at 2:50 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
Yeah, I see the whole image-based approach can be really problematic.
Have anyone considered using jsMath instead? At least they claim compatibility with really wide range of browsers/versions: http://www.math.union.edu/~dpvc/jsMath/browsers.html
It looks like that uses images as well, at least unless you install their special fonts. In the long term we probably want to use MathML -- HTML5 currently requires MathML support, and Firefox 3.6 does support it in text/html if you turn on the HTML5 parser. It might be supported in text/html by default in 3.7 (I don't know when they plan to make the HTML5 parser default). For the short term, we might consider at least allowing foreground and background colors to be changed inline on a per-<math> basis -- I'd guess this would be pretty simple.
On Wed, Nov 18, 2009 at 18:15, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Wed, Nov 18, 2009 at 2:50 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
Yeah, I see the whole image-based approach can be really problematic.
Have anyone considered using jsMath instead? At least they claim compatibility with really wide range of browsers/versions: http://www.math.union.edu/~dpvc/jsMath/browsers.html
... For the short term, we might consider at least allowing foreground and background colors to be changed inline on a per-<math> basis -- I'd guess this would be pretty simple.
I agree. I'm willing to contribute some C or C++ code to do the low level stuff of changing colors in the image. How do I proceed?
-- Alex
On 19.11.2009, 10:12 Alexander wrote:
I agree. I'm willing to contribute some C or C++ code to do the low level stuff of changing colors in the image. How do I proceed?
It might shock you, but MediaWiki's math handling system is written in ML (or OCAML? Nobody knows for sure except for the guy who wrote it):D
On Thu, Nov 19, 2009 at 18:20, Max Semenik maxsem.wiki@gmail.com wrote:
On 19.11.2009, 10:12 Alexander wrote:
I agree. I'm willing to contribute some C or C++ code to do the low level stuff of changing colors in the image. How do I proceed?
It might shock you, but MediaWiki's math handling system is written in ML (or OCAML? Nobody knows for sure except for the guy who wrote it):D
And how comes we can't post-process resulting PNG images with a program written in a different language? :)
-- Alex
On Thu, Nov 19, 2009 at 2:12 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
I agree. I'm willing to contribute some C or C++ code to do the low level stuff of changing colors in the image. How do I proceed?
That's almost certainly unnecessary. texvc already uses some type of image processor (dvipng?) that can presumably be configured to output in any desired color. This part should thus be a one-line change -- see the patch at https://bugzilla.wikimedia.org/show_bug.cgi?id=9341 for how it would likely be done. The rest of the patch would be hacking PHP (and maybe OCaml, ugh) code to accept the new parameter and pass it down to the right place. includes/Math.php would likely be the place to start here.
On Thu, Nov 19, 2009 at 11:31 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
And how comes we can't post-process resulting PNG images with a program written in a different language? :)
We really don't want to increase the amount of non-PHP code in core unless absolutely necessary, IMO. PHP is an awful language, but it's the only thing that all current MediaWiki developers know. Anything else is much harder to maintain, because only some subset of people with commit access can competently alter it. I'm sure most committers know basic C syntax, but few would be confident enough to make significant changes to a C program (and if they tried they'd probably introduce giant memory leaks and such). Just a while ago, it took days to fix a simple XSS in Timeline because it was written in Perl.
Besides, there's no need to reinvent the wheel. dvipng (which is apparently used here) should be able to do whatever we want, as far as I can tell. Failing that, ImageMagick or such would likely do the trick.
On Thu, Nov 19, 2009 at 19:49, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Thu, Nov 19, 2009 at 2:12 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
I agree. I'm willing to contribute some C or C++ code to do the low level stuff of changing colors in the image. How do I proceed?
That's almost certainly unnecessary. texvc already uses some type of image processor (dvipng?) that can presumably be configured to output in any desired color. This part should thus be a one-line change -- see the patch at https://bugzilla.wikimedia.org/show_bug.cgi?id=9341 for how it would likely be done. The rest of the patch would be hacking PHP (and maybe OCaml, ugh) code to accept the new parameter and pass it down to the right place. includes/Math.php would likely be the place to start here.
Unfortunately, this is not that easy or probably just impossible.
Turns out, that for that particular page (and most likely for other pages which have this problem), the background of table heading is specified through table class (hence, CSS):
in mediawiki: {| class="standard"
in html: <table class="standard">
So, there can be no way to provide non-alpha transparent image to satisfy all possible styles. And alpha-transparency won't do the trick for styles with black background. Duh!
I think we cannot do something sensible now, so we'll just have to wait for MathML support from most popular browsers.
-- Regards, Alex
On Fri, Nov 20, 2009 at 3:39 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
So, there can be no way to provide non-alpha transparent image to satisfy all possible styles.
No, but if the overwhelming majority of viewers see a light blue background, it would make a lot more sense to have a light blue background on the formula than a white background. Both will look wrong on some style, but they may as well at least look right on the default style.
I think we cannot do something sensible now, so we'll just have to wait for MathML support from most popular browsers.
That's definitely the long-term solution.
On Sun, Nov 22, 2009 at 01:30, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Fri, Nov 20, 2009 at 3:39 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
So, there can be no way to provide non-alpha transparent image to satisfy all possible styles.
No, but if the overwhelming majority of viewers see a light blue background, it would make a lot more sense to have a light blue background on the formula than a white background. Both will look wrong on some style, but they may as well at least look right on the default style.
Hey, I think I've found a really simple one-liner change to fix this (in default style):
th img.tex { border: 1px solid; border-color: #AAA; }
At least it makes the bug look like a feature. :-)
-- Cheers, Alex
On Sat, Nov 21, 2009 at 06:30:35PM -0500, Aryeh Gregor wrote:
On Fri, Nov 20, 2009 at 3:39 AM, Alexander Shulgin alex.shulgin@gmail.com wrote:
So, there can be no way to provide non-alpha transparent image to satisfy all possible styles.
No, but if the overwhelming majority of viewers see a light blue background, it would make a lot more sense to have a light blue background on the formula than a white background. Both will look wrong on some style, but they may as well at least look right on the default style.
If we want to skip transparency and just allow changing the background to any other solid color, it looks like it's pretty easy for a bare-bones fix: just add this as line 736 (in r59357) of texutil.ml:
| "\pagecolor" -> (tex_use_color (); LITERAL (TEX_ONLY "\pagecolor"))
Then people can use the "\pagecolor{...}" command to change the background just as they can use "\color{...}" now to change the foreground color (see [[m:Help:Math#Color]]).
On Mon, Nov 23, 2009 at 1:11 PM, Brad Jorsch b-jorsch@northwestern.edu wrote:
If we want to skip transparency and just allow changing the background to any other solid color, it looks like it's pretty easy for a bare-bones fix: just add this as line 736 (in r59357) of texutil.ml:
| "\pagecolor" -> (tex_use_color (); LITERAL (TEX_ONLY "\pagecolor"))
Then people can use the "\pagecolor{...}" command to change the background just as they can use "\color{...}" now to change the foreground color (see [[m:Help:Math#Color]]).
That sounds fairly sensible. Are there any objections? The annoying thing will be if the default background color is changed, and all the math images in a namespace suddenly look wrong.
* Aryeh Gregor Simetrical+wikilist@gmail.com [Thu, 19 Nov 2009 12:49:36 -0500]:
We really don't want to increase the amount of non-PHP code in core unless absolutely necessary, IMO. PHP is an awful language, but it's the only thing that all current MediaWiki developers know. Anything else is much harder to maintain, because only some subset of people with commit access can competently alter it. I'm sure most committers know basic C syntax, but few would be confident enough to make significant changes to a C program (and if they tried they'd probably introduce giant memory leaks and such). Just a while ago, it took days to fix a simple XSS in Timeline because it was written in Perl.
Besides, there's no need to reinvent the wheel. dvipng (which is apparently used here) should be able to do whatever we want, as far as I can tell. Failing that, ImageMagick or such would likely do the trick.
Recently I've come to interesting implementation of PHP in Java: http://www.caucho.com/resin-3.0/quercus/ They claim it runs MediaWiki. Probably can be used for mixed PHP / Java environment and for the smooth transition to Java? Dmitriy
Aryeh Gregor <Simetrical+wikilist <at> gmail.com> writes:
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore. We're still stuck with the fact that IE6 doesn't support alpha channels, though -- we could make the fully-transparent parts of the background transparent, but I don't see how we could avoid aliasing effects on sane browsers without making things look extremely ugly on IE6.
You could use PNG8 with a color palette where every color is black, with a variable level of transparency. That would be equivalent to full PNG32 alpha transparency in modern browsers (as long as the only color used in the formulas is black), while IE5.5/6 would have binary transparency without any aliasing - ugly but probably not horrible. (See http://www.v-methods.com/ji/palette_alpha.html for a demonstration.)
Or you could just send different images to IE6, for example by using empty divs with background images instead of img tags, and changing the image URL for IE6 with the star-html CSS hack. (Not very accessible, but maybe the text of the formula could be written into the div with overflow:hidden?)
On Sun, Nov 29, 2009 at 11:34, Tgr gtisza@gmail.com wrote:
Aryeh Gregor <Simetrical+wikilist <at> gmail.com> writes:
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore. We're still stuck with the fact that IE6 doesn't support alpha channels, though -- we could make the fully-transparent parts of the background transparent, but I don't see how we could avoid aliasing effects on sane browsers without making things look extremely ugly on IE6.
You could use PNG8 with a color palette where every color is black, with a variable level of transparency. That would be equivalent to full PNG32 alpha transparency in modern browsers (as long as the only color used in the formulas is black), while IE5.5/6 would have binary transparency without any aliasing - ugly but probably not horrible. (See http://www.v-methods.com/ji/palette_alpha.html for a demonstration.)
Hey, that is something!
I thought of this possibility for using tRNS chunk with 8-bit black PNG. But I discarded the idea because I didn't see a way for this to work with black background in custom styles.
Now it appeared to me that by a simple change to any style featuring black background we can overcome this last problem. Just put this line in the style and it'll work like before:
img.tex { background-color: white; }
So, to sum it up:
1. Make PNGs for TeX formulas be of 8-bit indexed colors format with tRNS chunk added.
The palette should contain all black pixels, except for single reserved color which should be white (see below), i.e:
| Index | Color | tRNS | | 0 | FF FF FF | 0 | | 1 | 00 00 00 | 1 | | 2 | 00 00 00 | 2 | ... | 255 | 00 00 00 | 255 |
2. Add bKGD chunk containing the index of white color in palette (0). This should make the image sensible for viewers other than browsers.
3. Modify currently used custom black style(s) to underlay white background for TeX-only images as described above.
4. Document the change, make people prepared for it. :)
This seems to me like a comprehensible change which should make sense to every browser (needs to be tested, though).
If everyone agrees on implementing this change you can count on me to hack the low-level PNG-related stuff. :) We can try to hack dvipng to add a new option for this or post-process the dvipng output, etc.
I'd really like to see this happen. Who is with me?
Or you could just send different images to IE6, for example by using empty divs with background images instead of img tags, and changing the image URL for IE6 with the star-html CSS hack. (Not very accessible, but maybe the text of the formula could be written into the div with overflow:hidden?)
This option looks error-prone and adds too much difficulty, IMHO.
-- Cheers! Alex
On Sun, Nov 29, 2009 at 4:34 AM, Tgr gtisza@gmail.com wrote:
You could use PNG8 with a color palette where every color is black, with a variable level of transparency. That would be equivalent to full PNG32 alpha transparency in modern browsers (as long as the only color used in the formulas is black), while IE5.5/6 would have binary transparency without any aliasing - ugly but probably not horrible. (See http://www.v-methods.com/ji/palette_alpha.html for a demonstration.)
I thought of this, but the images would probably be too ugly for IE6 users to be acceptable. Remember, we're talking about making things uglier for 15% of our users (everyone who uses IE6 on math articles) for the benefit of well under 1% of our users (the ones who view equations on non-white backgrounds in non-IE6 browsers). That's just not a reasonable tradeoff. Either it has to be demonstrated that IE6 PNG transparency fixes perform well even on pages with lots of equations, or people will just have to manually adjust background colors if they really care.
I've whitelisted \definecolor and \pagecolor in r59550. I'm resolving bug 8 as LATER, and suggest it only be reopened when either IE6 reaches <1% market share, or it can be demonstrated that we can do transparency without significantly hurting IE6 users' experience when reading math articles.
On Sun, Nov 29, 2009 at 11:45 AM, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
I've whitelisted \definecolor and \pagecolor in r59550. I'm resolving bug 8 as LATER, and suggest it only be reopened when either IE6 reaches <1% market share, or it can be demonstrated that we can do transparency without significantly hurting IE6 users' experience when reading math articles.
Er, sorry, I take that back. A patch to allow wiki administrators to configure texvc to output a non-white background would still be accepted. But not one to make the images transparent by default, unless it somehow plays nicely with IE6.
On Sun, Nov 29, 2009 at 5:46 PM, Aryeh Gregor <Simetrical+wikilist@gmail.comSimetrical%2Bwikilist@gmail.com
wrote:
On Sun, Nov 29, 2009 at 11:45 AM, Aryeh Gregor <Simetrical+wikilist@gmail.com Simetrical%2Bwikilist@gmail.com> wrote:
But not one to make the images transparent by default,
unless it somehow plays nicely with IE6.
Who cares about that browser?? It's been history for years! I really doubt that ANYONE still using that bitrotten thing of a browser cares about alpha-transparency or Wikipedia in general, and I don't think more time, money or energy should be wasted on making anything look ok on it - as long as a IE6 user is still able to read the text, it's ok IMO.
Marco
On Sun, Nov 29, 2009 at 12:19 PM, Marco Schuster marco@harddisk.is-a-geek.org wrote:
Who cares about that browser??
~15% of our users use it. If our goal is to make a broadly usable website, we care about it.
as long as a IE6 user is still able to read the text, it's ok IMO.
We need to weigh the interests of our users without regard to politics. A significant degradation for 15% of users is simply not acceptable to trade off against a slight improvement for the fraction of a percent who view equations on non-white backgrounds. Graceful degradation is okay, especially when adding new features. But making all equations look horribly blocky is not graceful, and can only be justified if there would be major gains for users of other browsers.
On Sun, Nov 29, 2009 at 6:28 PM, Aryeh Gregor <Simetrical+wikilist@gmail.comSimetrical%2Bwikilist@gmail.com
wrote:
On Sun, Nov 29, 2009 at 12:19 PM, Marco Schuster marco@harddisk.is-a-geek.org wrote:
Who cares about that browser??
~15% of our users use it. If our goal is to make a broadly usable website, we care about it.
So what? They'll see blocky images, but can make out what the content is.
as long as a IE6 user is still able to read the text, it's ok IMO.
We need to weigh the interests of our users without regard to politics.
Sometimes this is necessary though. Many people today still don't know that IE6 is dangerous. Wikipedia should warn those users and tell them how to upgrade.
Marco
On Sun, Nov 29, 2009 at 1:00 PM, Marco Schuster marco@harddisk.is-a-geek.org wrote:
So what?
I'm not sure how to respond to this. Is our goal to make a high-quality encyclopedia for everyone, or only for people who don't use IE6? Do those people count less for some reason? Should we ignore people who use text terminals or screen readers too, because they're a (much smaller) minority who are (much more) annoying to support?
Where it's better for our overall user base to not support IE6, then we should do that. And we do, in plenty of ways. But that's clearly not the case here. Transparent math images would provide zero benefit to virtually all non-IE6 users, so there's no possible justification for significantly degrading display for IE6 users. The cost-benefit analysis is crystal-clear.
Sometimes this is necessary though. Many people today still don't know that IE6 is dangerous. Wikipedia should warn those users and tell them how to upgrade.
If anyone has managed to successfully avoid upgrading to IE7 or 8 despite all of Microsoft's campaigning and attempts at auto-update, then it's very likely that they know exactly what they're doing and have made an informed decision to stick with IE6. We are in no position to second-guess that.
In practice, rumor suggests that the large majority of IE6 installations are on corporate sites, where IT is unwilling to spend the money testing and deploying a major change when things work well enough already. IE7 breaks a lot of sites that were coded to work only in IE6, particularly corporate intranet sites that ignored compatibility because they knew everyone would only run IE6 (since IT required it).
On Sun, Nov 29, 2009 at 1:38 PM, Aryeh Gregor Simetrical+wikilist@gmail.com wrote:
On Sun, Nov 29, 2009 at 1:00 PM, Marco Schuster marco@harddisk.is-a-geek.org wrote:
So what?
I'm not sure how to respond to this. Is our goal to make a high-quality encyclopedia for everyone, or only for people who don't use IE6? Do those people count less for some reason? Should we ignore people who use text terminals or screen readers too, because they're a (much smaller) minority who are (much more) annoying to support?
Where it's better for our overall user base to not support IE6, then we should do that. And we do, in plenty of ways. But that's clearly not the case here. Transparent math images would provide zero benefit to virtually all non-IE6 users, so there's no possible justification for significantly degrading display for IE6 users. The cost-benefit analysis is crystal-clear.
Sometimes this is necessary though. Many people today still don't know that IE6 is dangerous. Wikipedia should warn those users and tell them how to upgrade.
If anyone has managed to successfully avoid upgrading to IE7 or 8 despite all of Microsoft's campaigning and attempts at auto-update, then it's very likely that they know exactly what they're doing and have made an informed decision to stick with IE6. We are in no position to second-guess that.
In practice, rumor suggests that the large majority of IE6 installations are on corporate sites, where IT is unwilling to spend the money testing and deploying a major change when things work well enough already. IE7 breaks a lot of sites that were coded to work only in IE6, particularly corporate intranet sites that ignored compatibility because they knew everyone would only run IE6 (since IT required it).
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
The last point is key. Every so often (this list, elsewhere) I see people suggesting that IE6 support needs to be dropped, and users told to upgrade. The problem is that the vast majority of people who are still on IE6 are in situations where they cannot upgrade--exactly the scenario Aryeh outlined. I know with my current employer, financial services with approximately 31k employees, IE6 is still considered the company browser standard. Working in local government before that, the same situation applied. IE6 continues to have a market share, as much as it sucks. And as long as we're trying to be accessible to as many people as possible, we cannot ignore a 15% browsing audience.
Now, if people want to start plastering their sites with "Optimized for Firefox and Chrome" banners, lets break out the "Under Construction" pages too, since we'll be visiting websites reminiscent of the dot-com boom.
-Chad
Aryeh Gregor schrieb:
In practice, rumor suggests that the large majority of IE6 installations are on corporate sites, where IT is unwilling to spend the money testing and deploying a major change when things work well enough already. IE7 breaks a lot of sites that were coded to work only in IE6, particularly corporate intranet sites that ignored compatibility because they knew everyone would only run IE6 (since IT required it).
I can confirm that at least for Germany. As external consultant in IT departments of big companies I saw a lot of running IE6 :-( The users are not allowed to update or install a second, modern browser. It's a pain in the ass to work on such PCs.
Raymond.
Havent read the whole thread, but why not just do it the ol' school way. Have texvc create two images one with alpha and the other without, and then serve formula images depending on the user-agent. I know this is a nasty patch, IE6 and similar users remain at current state, while the others move forward ... it seems to me that any other option is just choosing a lesser evil.
LP, Jure
Raimond Spekking wrote:
Aryeh Gregor schrieb:
In practice, rumor suggests that the large majority of IE6 installations are on corporate sites, where IT is unwilling to spend the money testing and deploying a major change when things work well enough already. IE7 breaks a lot of sites that were coded to work only in IE6, particularly corporate intranet sites that ignored compatibility because they knew everyone would only run IE6 (since IT required it).
I can confirm that at least for Germany. As external consultant in IT departments of big companies I saw a lot of running IE6 :-( The users are not allowed to update or install a second, modern browser. It's a pain in the ass to work on such PCs.
Raymond.
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On Mon, Nov 30, 2009 at 8:44 AM, Freako F. Freakolowsky freak@drajv.si wrote:
Havent read the whole thread, but why not just do it the ol' school way. Have texvc create two images one with alpha and the other without, and then serve formula images depending on the user-agent.
Because that's a huge hassle for virtually zero benefit. You have to generate, store, and cache twice as many images, and implement some logic in Squid so it can serve different images to IE6 than everyone else (plain Vary: User-Agent would mean generating like four billion times as many images, not acceptable). On the other hand, the images will be *totally* *indistinguishable* for *virtually* *all* *articles*.
The current situation is *really* not a big problem that's worth spending significant effort on.
Hey, don't get me wrong ... the current state works for me 100%, even if wiki uses non-white background, i'm just throwing ideas here (and i do realize it was a weak idea).
IMO these kind of tweaks should be in form of a cofigurable option so people who want to use it and who think it won't screw up their system, could use it. We should have an option to use alpha in PNG for math if you think your wiki can exist without <IE6 compliance.
I'm NOT saying this should be used on WMF sites ... in fact i'm AGAINST that. As much as it pains me to say this, all IE browsers still in frequent use (if you can in fact call them browsers) should be supported.
That's all
Aryeh Gregor wrote:
On Mon, Nov 30, 2009 at 8:44 AM, Freako F. Freakolowsky freak@drajv.si wrote:
Havent read the whole thread, but why not just do it the ol' school way. Have texvc create two images one with alpha and the other without, and then serve formula images depending on the user-agent.
Because that's a huge hassle for virtually zero benefit. You have to generate, store, and cache twice as many images, and implement some logic in Squid so it can serve different images to IE6 than everyone else (plain Vary: User-Agent would mean generating like four billion times as many images, not acceptable). On the other hand, the images will be *totally* *indistinguishable* for *virtually* *all* *articles*.
The current situation is *really* not a big problem that's worth spending significant effort on.
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
On Mon, Nov 30, 2009 at 9:50 AM, Freako F. Freakolowsky freak@drajv.si wrote:
Hey, don't get me wrong ... the current state works for me 100%, even if wiki uses non-white background, i'm just throwing ideas here (and i do realize it was a weak idea).
IMO these kind of tweaks should be in form of a cofigurable option so people who want to use it and who think it won't screw up their system, could use it. We should have an option to use alpha in PNG for math if you think your wiki can exist without <IE6 compliance.
I'm NOT saying this should be used on WMF sites ... in fact i'm AGAINST that. As much as it pains me to say this, all IE browsers still in frequent use (if you can in fact call them browsers) should be supported.
That's all
As I said in bug 8, I'm totally in favor of a LocalSettings.php configuration option for math background, if someone wants to write the code. I even volunteered to review it, if it's short.
here you go r59593 ... :D
Aryeh Gregor wrote:
On Mon, Nov 30, 2009 at 9:50 AM, Freako F. Freakolowsky freak@drajv.si wrote:
Hey, don't get me wrong ... the current state works for me 100%, even if wiki uses non-white background, i'm just throwing ideas here (and i do realize it was a weak idea).
IMO these kind of tweaks should be in form of a cofigurable option so people who want to use it and who think it won't screw up their system, could use it. We should have an option to use alpha in PNG for math if you think your wiki can exist without <IE6 compliance.
I'm NOT saying this should be used on WMF sites ... in fact i'm AGAINST that. As much as it pains me to say this, all IE browsers still in frequent use (if you can in fact call them browsers) should be supported.
That's all
As I said in bug 8, I'm totally in favor of a LocalSettings.php configuration option for math background, if someone wants to write the code. I even volunteered to review it, if it's short.
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Tgr wrote:
Aryeh Gregor writes:
As far as I know, the only thing actually blocking us from doing this was something like IE5 on Mac printing transparent images with black backgrounds. That's probably not relevant anymore. We're still stuck with the fact that IE6 doesn't support alpha channels, though -- we could make the fully-transparent parts of the background transparent, but I don't see how we could avoid aliasing effects on sane browsers without making things look extremely ugly on IE6.
You could use PNG8 with a color palette where every color is black, with a variable level of transparency. That would be equivalent to full PNG32 alpha transparency in modern browsers (as long as the only color used in the formulas is black), while IE5.5/6 would have binary transparency without any aliasing - ugly but probably not horrible. (See http://www.v-methods.com/ji/palette_alpha.html for a demonstration.)
It's a nice thing, but how is that relevant to the discussion about texvc images? Formulas don't need several transparency levels. The problem of black background by browsers* ignoring the alpha channel is solved by using a white background with alpha transparency. So people not supporting the alpha channel, still see it white (for some reason, image software like putting black as the color being 'transparent').
The problem there is people reading the wiki as "green on white". They can use, img.tex { background-color: white; } to go back to how they are now.
We can even modify the existing rendered files, if we want to avoid the extremely unlikely case that there is some formula that hasn't been stored at the math table in all these years.
*It's not just printing on IE6, the alpha channel is also ignored if you open the image with simple software like paint.
On Sun, Nov 29, 2009 at 5:29 PM, Platonides Platonides@gmail.com wrote:
It's a nice thing, but how is that relevant to the discussion about texvc images? Formulas don't need several transparency levels.
Yes, they do, if you want them to look good, because the fonts are antialiased.
The problem of black background by browsers* ignoring the alpha channel is solved by using a white background with alpha transparency. So people not supporting the alpha channel, still see it white (for some reason, image software like putting black as the color being 'transparent').
This means that you'll still have a fuzzy white outline around the text when you put it against a non-white background. However, you're right that this will probably look better overall than the current situation. It's worth considering.
*It's not just printing on IE6, the alpha channel is also ignored if you open the image with simple software like paint.
I think we can ignore this issue.
wikitech-l@lists.wikimedia.org