Mozilla M16 Gets Alpha Channels
Snorfle writes: "In the recent Mozilla status update, there's a mention that real 8-bit alpha-channel support went quietly into Mozilla last week. Web-publishing types have been crying for this feature, provided principally through (royalty free!) PNG, though other alpha-capable formats will work too." All I want now is anti-aliased fonts for christmas.
There bug report has a nice Unicode page where you can test this bug.
The OP said that the Gimp had no efficient anti-aliased font rendering. Mind you font rendering in the Gimp usually conists of about three words, which takes all of about 100ms, no matter how inefficient the algorithm.
I've antialiased fonts installed (copied over from windows), and that made Netscape look somewhat better, but for some reason, it still looks worse than windows, and some fonts are still hideous.
i quite like them and the super portability of animated gifs makes them an atractive format
.oO0Oo.
with the bounding box nature of them they are quite compact too.
Lame homepages will always be lame but good homepages use the available technologies to enhance the experience, animated gif's being part of that.
Flash is good but proprietry and requires plugins.
Animated gifs display in image browsers.
We need unencumbered and supported animated file formats just as we need unecumbered static formats.
The work being done on SVG looks good as it supports vector graphics with animation and createable with xml, can't get much more portable than that!
http://www.w3.org/Graphics/SVG/Overview.htm8
or here
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
I think its important to remember this just is another headace for us webdevelopers. I cant think of a client that would accept a crappy look in IE, and that is what ull get in most cases if you use this feature.. more serverside work is needed, great.
"Theres alotta savages in this town.."
Unfortunately, since I much prefer IE in general, I'll still have to wait a while to get alpha in my browser. Maybe Microsoft will figure out that Alpha is a Good Thing soon?
Well.. unfortunately it's not that simple any more. Although the European Patent Convention specifically excludes software from being treated as a patentable 'invention', the European Patent Office ruled that this didn't mean what it said, and computer programs can be patented after all. It just goes to show that patent offices will try as hard as they can to increase what is patentable, without concern for whether such patentability is desirable. The EPO seems no more trustworthy than the USPTO. Following the EPO's decision, the UK patent office has revised its practice on software patents.
Anyway, it is still not certain whether such patents granted are actually enforceable. The European Commission are considering changing the law to catch up with the EPO's behaviour, so that software patents will become officially permitted (rather than de facto permitted as at present). Until then it isn't certain whether a lawsuit based on a European software patent would succeed (IANAL); big companies such as IBM are however stocking up on software patents in the hope of one day being able to use them. (Have a look at freepatents.org for more about stopping this from happening.)
Unisys claim to have a patent on LZW in several European countries, including the UK. I don't know whether they've actually tried to shake down British companies for money though. But you may not be as safe as you think.
-- Ed Avis ed@membled.com
Have you looked at any of the non-microsoft UI's lately?
It is scary how almost NONE of them use the standard widgets. Look at any recent version of McAffe virus scan. It looks crazy. (I am not talking about high-end products here... just products for the general consumer.)
It is kind of funny. On the unix side, we strive to have a uniform look and feel. On the windows side, everyone wants to be different.
-- Thrakkerzog
WWJD? JWRTFM!!!
It seems that if the feature is coded, it isn't turned on, atleast in the latest nightly.
I can't spell or type, but that doesn't mean I'm unusually stupid.
Netscape Navigator has actually had a very weak and undocumented version of alpha channels since at least NS 3.0
The way it works is: Take a gif, double its resolution, then overlay a checkerboard pattern of transparent pixels. Then, create a page with that picture, halving the pixel dimensions so it's compressd down by NS. In most version sof NS 3 (And I believe IE3) this will actually create a 50% non-dithered alpha channel, letting the background show through.
You can see an example of this here, but be warned that it doesn't work on all browsers. There should be two copies of the same image. the first, reduced by 50%, the other full size. Note that on NS 4.7 on Linux the first doesn't show up at all. Elsewhere, YMMV.
Kevin Fox
Kevin Fox
Check out www.icab.de, their browser has supported the alpha channel in PNG images for months, as well as anti-aliased fonts (part of the Mac window toolkit). Is it just me or are there too many OSS users out there that have stopped keeping up with other platforms, and so are really impressed when some piece of old tech makes it to linux?
-- sudo.ca
More notes on alpha channels :
Without alpha channels you cannot composite an image onto a background without a "pixelized border". With an alpha channel the edges of one image can be smoothly faded into the background image. Alpha channels are especially useful in games. Things like smoke/fire are not solid objects they are transparent and they fade out near their extents. To achieve this gradual fade out the alpha channel goes from 255 (or 1.0) in the center of the image to 0 near the edges.
Also, "Alpha Buffers" are slightly different from "Alpha Channels". When drawing to a frame buffer with an Alpha Buffer the alpha values from the source image are usually copied along with the RGB components. In 3d games this is useful for drawing transparent shadows for objects. Without this, you can only draw solid black shadows or have a weird looking shadow.
- First the object is projected onto the ground.
- The screen area where the shadow is to be drawn is cleared in the alpha channel.
- The object is drawn with updates to the RGB channels turned off (i.e. only the alpha channel - also called a stencil buffer - is updated).
- A flat polygon is transparently drawn to the frame buffer where the alpha value is not 0.
The result is a transparent shadow that doesn't overlap itself and get darker where polygons intersect.
On the playstation 2 and several new games truecolor is used. Since 24bit color is difficult to address (requires multiply by 3 or X*2+X) 32bit is usually used. This gives 8bits left over for the alpha/stencil buffer. All sorts of neat tricks can be done with an alpha buffer. I've used it on the PS2 to do depth of field (i.e. distance objects look blurry) rendering without having to draw my scene more than once.
-- Virtual Windows Project
---
Nah. Almost all Be developers came from the Amiga world... They just targetted Mac users...
---
Well, I know that Be has a larger than usual number of ex-Amiga developers, but I'd still say that most came from the Mac (at least, around the time I was heavily involved with the BeOS - between PR1 and R3 mostly).
---
Have you ever seen CBM's "Amiga Style Guide" ?
---
Nope, but I'd be interested in it. Is it available online somewhere?
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
There is a mixture of PNG and JPEG called JNG which is supposed to support JPEG compression and an alpha channel. But a short search on the PNG homepage didn't bring any results for me. Maybe if you use a search engine.
In theory, one can simply add an alpha channel to a JPEG file (a second channel for a grayscale or a fourth for a YCbCr color image) -- there is just no software that supports this. The JPEG standard also doesn't say anything about color spaces... Maybe one could wrap the alpha channel into a custom marker. This all makes sense only if it is standardized in some way (so that all major applications support it), which is a very painful and long process. But JPEG2000 is on the way, maybe it adds transparency support of some kind.
I also know Kodak Flashpix, which uses JPEG compression, I don't know about alpha channel support.
I seem to remember that PNG specifies that the pixels should not be pre-multiplied.
I don't remember what the reasoning for this was. I don't really understand what the problem is in what you are describing. Are you just saying that you have to be careful not to multiply twice? Or is there a fundamental flaw in non-pre-multiplied image data?
It seems to me that the only problem is that losing some of the data to quantization, though it seems like it would go the other way -- pre-multiplied would degrade it.
--Kevin
Well, they have the anti-aliased fonts, but I don't think they have full alpha-channel support for pngs (please do correct my if I'm wrong - I've only looked into this up until IE 5 - maybe 5.5 has better png support).
--
--
Beauty is in the eye of the beholder... Oh, no. It's just an eyelash.
You simply have to be careful not to multiply twice; multiplying twice means a pixel at 50% intensity is going to end up at 25% effective intensity in the destination.
You can test this effect when blending white, antialiased text on to a white background. The pixels should sum at 1.0, perfect white.
Quality becomes an issue only if conversions need to be made back of forth the two.
Jouni
--
Jouni Mannonen
3D Evangelist
Jouni Mannonen | Game Designer, Consultant
To the "moderator" who labeled this as flamebait;
this is another fine example of what is wrong with Slashdot and "Open Source" in general. Openness is more than about software. It's also about open opinions and free speech, another subject that many slashdotters love to spill endless comments over. If criticism is construed as flamebaiting, then what we have is the Web's equivalent of the Animal Farm, and Napoleon is a penguin.
i suggest reading this http://www.oreillynet.com/pub/a/network/2000/05/19 /magazine/mozilla_vm.html for a start and hold off your sarcasm.
True font anti-aliasing (as opposed to just gaussain blurring the edges of the font slightly, like windoze...) requires, at some level, an abstraction similar to an alpha channe.
One simple (but imperfect -doesn't give enough attention to the destination image) implementation is (for monochrome fonts -colour fonts would require a colour alpha channel):
an outline font is rasterised at high resolution, then this black+white high-res rasterisation is reduced to, say, a 16-level geryscale bitmap - which is used, somewhat like an alpha channel, to place the letter image on the screen
eg. (somewhat contrived squat N shape -I
can't be arsed doing any more manually) :
High-res B/W rasterisation
00 00 00 00 00 00 00 00
00 11 11 00 00 01 11 10
00 11 11 11 00 00 11 10
00 11 10 11 10 00 11 10
00 11 10 01 11 00 11 10
00 11 10 00 11 10 11 10
00 11 10 00 00 11 11 10
00 11 11 00 00 01 11 10
Lower res 4-greyscale image:
02200121
04341042
04214142
04300342
This would then be merged, by
whatever method gives a decent result (here
a simple capped addition is used, more complex
formula would give clearer result..),
with the destination image, which is, for
simplicity, here also a gresycale...
Dest, Dest,
before: after:
01100200 03300321
10100010 14441042
00200000 04414142
02110110 04410442
One other thing - I just downloaded the latest linux nightly build, and it really flies compared to earlier builds (I'm posting form it right now...), and renders 200+ comment slashdot in nested mode in a fraction of a second...
/. loads.
You are right, this thing totally rips now. It is like a turbocharged browser. I like it a LOT. They also fixed the annoying one-back URL bar problem, and the X cut-and-paste, and SFGate front page renders properly...
This seems like things are finally cooking. I really can't believe how fast
The adblocker code is going to be largely irrelevant, just forcing people to pull their adserving machines back into their own domains. Whoopie. Somebody (doubleclick?) is even going to offer it as a trivial code drop-in that they will kindly manage and you are back at square one except that if you want to get around the adblocker you are going to have to get in bed with an ad agency and accept them touching your server.
Since selling the ad cookie data is going to be part of people's income, doubleclick can just aggregate the code dumps into exactly the sort of profiling as before with exactly the same privacy implications.
Your purchasing preferences are information, and like all other information it wants to be free too.
DB
As has been mentioned by XFree developers, the most direct way to implement font (and everything-else) antialiasing is to have an alpha channel to use as a mask. So if Gecko now has proper support for 8-bit alpha rendering, it shouldn't be terribly hard to use this code to render masks to antialias fonts in browser windows.
On the other hand, there is talk (again, among the XFree developers) of adding native server-level alpha channel support, which would make everybody's life easier in this respect -- plus, someone might finally be able to properly implement those silly transparent terminal windows. :-) More importantly, though, server level alpha support would make it much easier to render anti-aliased fonts, shaped windows, and such.
Quantum mechanics: the dreams that stuff is made of.
[GIF animations a]re as much a part of the web now as HTML. PNG needs animation support.
There's always MNG, a superset of PNG that supports animation. And there's also JavaScript image rotation, which gives quite a bit more power than the simple rotation in the GIF format. But other than on banner ads (which are gradually moving to Macromedia Flash anyway), where do you see a GIF animation anymore? On somebody's lame homepage?
Will I retire or break 10K?
OMG!!! All the people slagging it off may actually be forced to admit that there's a point to Mozilla!!!!!
I think Mozilla is still using GTK. It's being used to draw the platform independant-ish toolmkit.
treke
This is excellent news...however, a question...
.PSD, which was never meant for -really- small file sizes...)
PNG uses a (albiet very good) losless compression format, similar to LZW or RLE. In my photoshop saver, it also has a number of extra filter options for adaptive sampling and dithering, to decrease the size in a lossy manner. However, I am willing to bet that the compression ratio on larger images isn't nearly as good as JPEG for photographic, non-flat art images with lots of detail, where every pixel is a random value.
What I always wanted was an addition to the tag in html where you specify an identically sized greyscale JPEG as your alpha channel, so that img tag loads two jpegs, one with fill, one with alpha, since JPEG doesn't support alpha channels (it should.)
is there any other format that supports jpeg compression and alpha channels? (besides
Also, what kind of keying is it doing? Is it premultiplied over black or straight? It's harder to avoid the fringies on normal images when keying straight, you have to overfill areas with solid colors and key inside those areas so that there's no black bleed on the edges.
The JPEG hack may seem like a pain to most, but I work in television graphics all day long and we use a lot of seperated alpha/fill elements, in both custom hardware and desktop software, like After Effects, for reasons of control and flexibility.
I'd like to hear people's thoughts on this.
---Mike
harlock@raindrop.com
...and what portion of your comfortable western existence will be paid for with the blood of screaming children? whose parents have no vote? in a country where there is no right to dissent?
I realize this has nothing to do with alpha channels, but since the day the Mozilla project was announced, there's been one change I've been lobbying for and I'm trying to round up additional support.
In Netscape 0-3, when you opened a link in a new window, the Go menu retained the history of the old window. This changed in Netscape 4, where the new window now starts with an empty history. I find this incredibly frustrating. At a large site, I'll frequently open multiple windows, close them as I read the articles, and then discover that I can't back out because I forgot which window was the parent.
After months of debate, a Netscape employee marked the RFE as "WONTFIX". (It seems to have recently been reopened.) If other people think this would be a useful change to make, please visit the relevant Bugzilla page and comment or vote!!
What I'm listening to now on Pandora...
Not really - I generally avoid the Windows side, and feel no compelling reason to defend it (last I checked, you were right - UI standards are lacking there).
:>), whose main source of influence - Apple - has had a long history of pretty good UI design. The developers, with few exceptions, have been pretty good as well. Admittedly Apple really screwed up with QuickTime 4 and (even moreso) Sherlock 2, but it looks like they might be shaping up even if just a little bit.
On the Unix side, things have traditionally been terrible from the consistancy standpoint. But at least progress is being made. Microsoft on the other hand doesn't have any excuse - it's hard to impress on developers that virtues of a consistant UI when even similar Microsoft apps are completely different.
I personally come from a MacOS background (bet you couldn't tell
BeOS has had a pretty consistant UI between apps, even though it took some time before Be published their UI guidelines. That may have something to do with almost all original BeOS developers coming from the Mac world.
As I mentioned, Unix/Linux seems to be getting better as well. With each release of Gnome and/or Sawmill (and the impending release of Eazel's stuff) I feel less shock upon rebooting into my LinuxPPC partition. I can only hope this trend continues, and developers learn the need for truly intuitive and user friendly interfaces.
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
Um, how exactly is a yet-to-be-released browser going to over take IE?
Have you even seen the stuff that's in IE? And by the time mozilla comes out there'll be more.
I've never managed to get mozilla working for longer than 20 minutes straight...including the NS6 preview.
Windows *does* anti-alias correctly over non-uniform background (ie. it really blends the pixels properly). Please do your research first. :) The screenshot demonstrated alpha transparency, not anti-aliasing (or if it did, it's really horrible kind of!)
Instead of a manual or semi manual hinting evolver, how about going one better and designing an algorithm that can evolve a "most similar looking" shape for any outline font at any pixel size? Thereby removing the need for predesigned hinting at all.
If the main issue keeping X/Mozilla/Gtk etc from having decent antialiasing is a good set of TrueType fonts, please note that both MS and Apple make their base font sets available for free download.
MS has their web font set available to provide a common user experience in all browsers and platforms. - If I recall correctly these may even be distributed by anyone assuming they use the MS "packaging". (Unusual move for MS, but this is when they introduced fonts like Comic Sans and Netscape was still the dominant browser. - They wanted to "enhance" the web by adding a common set of fonts beyond the basic Serif and San Serif varieties)
Apple has released System 7 software for free download on their website. These systems include the common MacOS Truetype fonts. (Times, Helvetica, Courier are included) Apple's two fork file structure complicates things but not too much.
I think free beer fonts is something I can live with. They're not such an essential part of the OS that they have to be hackable. - I'm also betting that all dominent distros could receive permission from Apple to bundle these already free fonts on their CD making install/setup easy for everyone.
Success of Linux on the desktop depends on features... - I give Linux an 18 month window of oppotunity to proove itself on the desktop, after that people will ignore it. After said time, if we haven't made an impact, the market will see the desktop as a WinMe vs. MacOSX world. (Yes, we'll still be using Linux on our desktops but y'all know what I mean by desktop OS.)
The real killer for Linux though isn't going to be pretty type. With broadband coming up, streaming media is going to be the killer app.
--Aaron Greenberg
Mozilla's user interface isn't all that speedy yet; but it's important that the main feature of a web browser, page rendering works and works really fast. That's what matters, right? Please remember current Mozilla is still pre-beta. They still have all the debugging code bloat in it! There are versions of Mozilla that don't use it's own widget set (controls in Windows speak, gadgets in Amiga speak) for UI, which have *much* faster response for user interface events. IE is going to get run for it's money from Mozilla project.
or gamma rays?
or at least the Microsoft equivalent anyway.
For what it's worth (possibly not much to anyone here I realize, but hey, you don't get much Microsoft news so what the heck)
Prior to the actual milestone release, Mozilla tends to say that they are adding to "Mx" even though that milestone may not be ready for a while. M16 is supposed to be done by the end of next week, but who knows...
~luge
IAAL,BIANLY
-----------
"You can't shake the Devil's hand and say you're only kidding."
Internet Explorer has supported this well since version 5.0.
On another point: isn't it the OS's duty to create the anti-aliasing in fonts? It was done in Win9x with a simple checkbox in the Effects preferences and affected all display of fonts.
I would imagine that the GIMP already has this built in; can't the code be propogated to the X codebase?
I totally agree with you that we need openness and criticism, but I think you are working from the assumption that all criticism is valid in any shape or form. This is not the case. There is a difference between constructive criticism and flaming. If the person wanted to make a good argument then she/he would have made a statement and provided some points to back it up. Instead, the person seems to be sarcastically attacking mozilla and providing no supporting statements. Hence, I think a moderation of that post as "flamebait" is valid.
There is no place for ad hominems, insulting sarcasm, and deliberately hurtful words in open discourse. Otherwise, I could argue something totally horrible and irrelevant like, "you're wrong because you're gay and you fsck your father" and that would be protected under the guise of "criticism."
I welcome constructive critism and differing points of view. I eschew and reject any other kinds of critisicm or negativity, and I do not think they belong on Slashdot.
I don't make the rules. I just make fun of them.
Check this, it's done in Windows using standard GDI. Font anti-aliasing
Was M16 released? Or was support slipped into the nightly builds?
---
It's harder than you think. It's being worked on.
This means that a PNG can have varying levels of transparency. So a PNG of a penguin with a fuzzy shadow behind it will look beautiful on both black and white backgrounds. (Assuming you find penguins beautiful)
I'm going to have to let go of the bitterness... I assumed it had been given up. Yay!
Most computerized images have 3 'channels' (red, green and blue). The alpha-channel is an extra channel of information, usually used for transparency information, so this means that images can have 256 levels of transparency in them, instead of the 2 that GIF uses.
Are you high?
To me platform consitency would mean it looking the SAME on most platforms. When I load mozilla on NT it pretty much (minus the window manager) looks the same. that is pretty friggen consistant. Get your head straight and stop dissing a project you most likely know nothing about really.
Tony
Seriously, the people reading at +2 should be able to read this, it's well done.
Free music from Jack Merlot.
Weird way of getting attention to a bug. Anyway, you can vote for bugs in Bugzilla to mark most important bugs to fix. So far this bug has only got one vote but I also don't think that Slashdot effect should be used to emphasize one bug over others. Just make a search to find other and more fatal bugs.
Sorry, but Windows doesn't certainly do Gaussian blur or any other simple trick. It correctly renders anti-aliased fonts with TrueType hints. As much as we love to bash Windows, give credit where it's due.
I'm not really concerned about polka-dotted scrollbars either, but there are some other areas where platform widgets tend to fall down (especially current GTK, as it turns out), and some of those are pretty important. Things like variable opacity for input widgets (this whole article is about variable-alpha, right?) and support for mixed font sets in input widgets (key for decent i18n support). The GTK i18n stuff is being improved dramatically by the Pango project, but it's not ready to deploy yet.
Pluggable toolkit support is broken in M16, but will be repaired, and it then might be possible for you to build your own libwidget_darchmare.so that uses all-native stuff. I'm not really expert on the widget-construction code.
Isn't it past your bed time.
Well at least you act like it.
Well, I have not seen it yet, but I once made a website where I wanted the buttons to be slightly transparent on the edges, so there would be a nice smooth transition from the button to the background.
With GIF transparency, this was not possible in a reasonable way, because either a pixel has to be fully transparent, or fully opaque (i.e. completely solid), so you can't have a pixel which is 25% transparent for example.
If I had the possibility to use PNG files (which offer 256 levels of transparency), the transition would even have been smooth on a low-resolution display.
So it has its uses, especially for images which have to blend into the background, or maybe into another picture (hmm.. is this possible in HTML?)
Here's a nice demo:
http://www.pp.htv.fi/hsivon e1/css-test/bitmapstyle.html
View the source. Check out the PNG in the GIMP. very cool.
I'm not really sure, but couldn't the changes be made to GTK/QT so that all GTK/QT apps supported it without recoding? (Of course more "native" X apps is another issue)
there was once something called JPIG which was essencially jpeg with an alpha channel. as far as i've seen (never heard of it since) it hasn't taken off. it required a plug in i think - which is a bad start.
it's something we could do with.
and maybe animated pngs to replace anim gifs. not that i like them - by they're ok when used properly.
Supposedly, that is not true AA in win9x. (They didn't even have the gall to call it AA.) That is why they called it "Smooth Edges" instead of AA.
You can tell it is not AA by looking at fonts which have been scaled very small.
-- Thrakkerzog
Antialiasing font rendering is something that has existed in at least Freetype for some time. However, antialiasing is fairly worthless without decent fonts to begin with. Microsoft and Apple both have manually hinted fonts which have been adjusted to look their best at the most common point sizes. There are very few people on this planet which can do a really good job manually hinting fonts and it's a very long process.
Fonts are one of those things which have very interest protections under the law. You can legally copy underlining font outline out of a font without violating any copyright laws, however the hinting is actually a set of assembly-like instructions embedded into the font which are covered under US law.
Until someone sits down and spends a year manually hinting things like Arial/Helvitica and open sources the hinting instructions, other OS's are doomed to deal with overly thick verticals, misaligned letters and misshaped ovals.
Of course, someone who really wants to be clever can install FreeType (with the old hinting engine which will process the manual hinting correctly) under Windows and create a program which evolves your own font's hinting until the output looks like the Microsoft font output at various sizes w/o aliasing turned on. The basic idea is you render the 'M' at size 36 from Times New Roman with FreeType then you import the outline into your own font file and continually change the hinting instructions until your 'M' and the Times New Roman 'M' are the same when compared pixel by pixel. You wouldn't be copying the hinting instructions, you'd be creating your own and automating the process of checking it against the original.
That would make an interesting PhD thesis.
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
--bdj
Score: -5, Posted by complete idiot. You loser. More people have died from Christianity than from Communism. Yet Christian companies like Wal*Mart do well in America. What's your explanation for that?
The World is Yours.
The previous threads indicated this would help with font anti-aliasing. How would an alpha channel help with text? Isn't this just for graphics?
Free music from Jack Merlot.
Premultiplied over black means you do A+B*(1-a).
Premultiplied has some advantages: you can make glows (where A > a), programs that ignore the alpha produce an ok image (rather than strange bright colors on the antialiased edges), and all 3-D renderers produce this type of image. Premultiplied images should compress better too, due to the coherence between intensity and alpha.
Premultiplied has disadvantages, too: the color of transparent areas is at a very low resolution (this will show up if you overlap the same color many times), you can't get two antialised images that overlap without unexpected seams due to this, and if you pull a key you have to destroy information that may be useful for making a better key. Also the 3-D renderers are almost always incorrect with the math because they assumme the gamma is 1.0 and removing this assumption is difficult or impossible.
It would seem to me that PNG should have allowed a flag to say which way the image is stored, but they probabably wanted to keep it as simple as possible. Except for glows you can convert premultiplied to non-premultipled by dividing by the alpha (use 0 if the alpha is zero).
>What I always wanted was an addition to the tag in html where you specify an identically sized .PSD,
>greyscale JPEG as your alpha channel, so that img tag loads two jpegs, one with fill, one with
>alpha, since JPEG doesn't support alpha channels it should.)
>
>is there any other format that supports jpeg compression and alpha channels? (besides
>which was never meant for -really- small file sizes...)
Yes, JNG (JPEG Network Graphics, a part of MNG)
supports a JPEG image plus a PNG-encoded alpha
channel.
Look for the JNG specification at
http://www.libpng.org/pub/mng/
There are a few areas where Netscape dropped the ball over the last few years; fortunately, though, we seem to be catching up at quite a rate.
IE 2 was pretty crappy, NN 2 was just a bit primitive.
IE 3 was really quite usable, for the time. Interestingly, it seems to have been created in a similar way to the approach IBM took with the PC: take a very small, good, dedicated team, and get them to produce something very quickly. It worked in both cases.
By IE 4/NN 4, the tables had turned; IE was in the lead.
Now, though, Mozilla looks set to reverse the roles again: it's certainly not perfect (hint: DO NOT MODERATE ON /. while using it - I did, and it ate my points!) but it's going to be amazing once the bugs are fixed and the performance has been tweaked!
Things like the ad-blocker should be killer features, with a bit of work (I note the /. people have already changed things to make ads come from images.slashdot.org...).
On another point: isn't it the OS's duty to create the anti-aliasing in fonts? It was done in Win9x with a simple checkbox in the Effects preferences and affected all display of fonts.
That depends what you mean by OS. If you have a watertight definition, I know a DoJ who want to meet you :-)
Seriously, it really belongs in the font rendering sytem (well, duh!). That's where XFS (the X Font Server) comes in. Unfortunately, there are various problems in this area (this was discussed on the wine-devel mailing list a year or so ago, IIRC) but I think it can be done with some patches.
Incidentally, I am told the Win95 `font smoothing' isn't true anti-aliasing: all it does is smudge the font slightly!
Comment removed based on user account deletion
There are apparently some KDE hackers just started work on it - but it will not automatically enhance all applications using X Fonts - only new applications will benefit. But yes, it will be a plug-in extension like DGA or GLX, and no, it won't break existing applications - they'll just look worse than ones using the extension...
Comment removed based on user account deletion
---
Are you high?
---
Nope, although I've probably got enough caffeine in my system to kill a horse. I doubt that's making a difference, though.
---
To me platform consitency would mean it looking the SAME on most platforms.
---
Umm... Most people who use a given OS use it exclusively, or mostly so. Even if they don't, it's a good bet that they are intimately familiar with the widget set and capabilities of the operating system they use most of the time. Why should we diverge from accepted user interface standards? Should we return to the day when each application had its own user interface? I hope you're not seriously considering such a movement.
---
When I load mozilla on NT it pretty much (minus the window manager) looks the same. that is pretty friggen consistant.
---
But, it's not consistant with the rest of NT. It's certainly not consistant with the MacOS UI. If you install something that performs global changes on the UI (ie. Various themes, Kaleidoscope, etc) then those won't work either. At the very least, this is a pretty blatant duplication of code/effort. At its worst, it's externally inconsistant with the rest of the OS. Bad UI design.
---
Get your head straight and stop dissing a project you most likely know nothing about really.
---
Actually, I do know a bit about the project. I've even done some early work on one of the more popular skins that you can use with it. Check MozillaZine's ChromeZone if you'd like.
Perhaps you should refrain from commenting on something (or in this case, someone) you know nothing about?
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
Oh, look Mabel! Our little Johnny is growing up and starting to become politically aware. How cute.
I've read/heard all of this before, mostly in the Mozilla UI design newsgroup. I'm pretty familiar with the arguments.
:> In fact, the article you reference even links to a skin that originated from yours truly (since taken over by a very talented guy by the name of Pete). So yeah, I'm somewhat familiar with the technology behind Mozilla's skins/chrome.
However, when pressed, the main Mozilla folks will blame it on lack of funding for native user interfaces. I'm not sure how designing custom UI widgets is more cost effective than using native UIs, but if this is true then the blame goes to AOL for letting their lack of funding ruin the direction Mozilla's UI has gone.
If they don't want to fund it, don't. At least it won't sully the name of Mozilla with a usability nightmare of a user interface.
Besides, the whole "Web browser as a platform" story is a joke. Frankly, I'd much rather have a decent web browser first. As much as I respect the O'Reilly people, they sure picked the wrong thing to compare Mozilla to. Java apps are notorious for less than acceptable user interface design (yes, even w/Swing).
And no, I'm not talking out my ass.
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
I was forced for a long time to use browsers which lagged a long way behind the state of the art. This made me sympathetic to the needs of other people who are stuck with older technology. There's nothing quite so frustrating as trying to find a piece of information only to continually run into dead ends in the form of messages like "Sorry, you need a frames/javascript capable browser to view this page".
Okay, so many animated GIFs are really unnecessary but sometimes a bit of animation can really make a site. Check out http://www.digger.org for example. When creating this animation, I looked at many ways of doing it and picked the way which would download fastest and work best of the widest range of browsers.
I know many people dislike GIFs for ideological reasons (i.e. the Unisys patent) but for those of us that don't live in the USA - we don't care! Algorithms can't be patented in the UK so I'll use GIFs on my web pages for as long as they can be viewed by the greatest proportion of web users.
Mike -
Thanks for the info. Have any 3rd parties (ie. Apple - I can't imagine Microsoft doing so) expressed interest in working on native UI widgets? I'd be very interested in seeing it happen.
Perhaps with Fizzila on OSX...?
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff
It's not a KDE hacker I don't think. It's someone at SuSE, if it's the same person I'm thinking of: Keith Packard, possibly.
Due to this bug in Mozilla, any web page that has a form and uses a charset that is other than ISO-8859-1 would not work. I hope the severity of this bug is increased ASAP and the fix moved to something other than M19. This bug is known to effect Unicode pages that have forms as well.
--
And before any of your retarded-monkeys tell me to leave (since I dislike it so much), let me save you the trouble and respond with a loud "eat me". Thanks.
-----------
"You can't shake the Devil's hand and say you're only kidding."
Using pre-multiplied Alpha you could, for example, render a 3D text logo on to a black background and save it with the Alpha channel, then blend to screen to get a perfect anti-aliased result on top of any color background. Using standard Alpha blending, you would see a thin dark outline on the logo where the already anti-aliased pixels - Alpha blended towards black in the rendering program - are darkened further by the process of blending.
Traditionally, this is the reason why in some games a bright explosion might have darkened outlines; not because the artist thought it looked good but because digital image processing is a fairly intricate process and the logic of it is not always clear. Even the art guys don't always understand.
Pixels in the image that are fully opaque (i.e. not transparent at all) would have an alpha value of 1.0 and would thus replace the one on destination. Pixels in the image that have only 50% coverage because of anti-aliasing, would multiply the destination by 0.5 but should not be multipled by the alpha internally because they were already rendered on to a black (00,00,00) background. Pixels in the image that are fully transparent would not affect the destination.
The output of these two processes is fundamentally different and choosing between them requires knowing whether the color information in the image is already affected by the alpha information or not. You must do this decision explicitly, for it cannot be determined from the image itself.
Whether there is a switch for this in Mozilla or any other Alpha supporting browser, or whether there is a switch for this in the PNG file format itself I do not know. My point is that there should be, if we're wanting proper output of our blended imagery. Jouni
--
Jouni Mannonen
3D Evangelist
Jouni Mannonen | Game Designer, Consultant
Add a bit of alpha transparency ronud the edge of the text...the text starts to fade into the background at it's extremities, and it looks slightly smoother.
Not true antialiasing, but better than nothing at all.
Some crap about needing X to support alpha, so that when an image changed, and there was an image over the top of the changing one, it would all be redrawn correctly, without the need for Mozilla to handle it all.
I guess they gave up waiting and decided to do it themselves.
---
On another point: isn't it the OS's duty to create the anti-aliasing in fonts?
---
Yeah, but the Mozilla group doesn't appear to have any qualms overriding the OS when they feel like it (hence the lack of native widgets - so much for platform consistancy).
I guess they're trying to do the Anti-Microsoft. Instead of an OS swallowing up a web browser, damn near everything is going to be part of a browser. Next thing you know, they'll include a fully featured file browser and disk defragmenter in their next release...
<SARCASM>
But hey, at least it'll allow people to have polka-dotted CSS-compliant buttons and scrollbars! Forget good UI design, this is the kind of thing web developers need!
</SARCASM>
- Jeff A. Campbell
- VelociNews (http://www.velocinews.com)
- Jeff