Mozilla M16 Gets Alpha Channels 104
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.
Re:Important bug not given enough attention. (Score:1)
Re:Sweet... (Score:1)
Re:Fonts (Score:1)
Re:Who needs GIF animation? (Score:1)
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 [w3.org]
sounds great BUT.... (Score:2)
Proper support for PNG (Score:1)
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?
Re:Many people! (Score:3)
Well.. unfortunately it's not that simple any more. Although the European Patent Convention specifically excludes [european-p...office.org] software from being treated as a patentable 'invention', the European Patent Office ruled [european-p...office.org] 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 [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.
Re:Sweet... (Score:1)
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
Re:sounds great BUT.... (Score:1)
Re:USA supports murder and torture. Please Read. (Score:1)
Post from M16 Nightly (Score:1)
NS had weak alpha since 3.0 (Score:2)
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 [fury.com], 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
iCab for Mac had this months ago (Score:2)
Re:Ok, I give... (Score:2)
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.
Re:Sweet... (Score:2)
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 [velocinews.com])
JNG (Score:3)
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.
Re:Alpha blending is not the final solution (Score:2)
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
Re:Internet Explorer 5.5 has this built in too... (Score:1)
Re:Alpha blending is not the final solution (Score:1)
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
Re:Shock Horror!!! (Score:2)
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.
Re:Sweet... (Score:2)
Re:Ok, I give... (Score:5)
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
Re:Fonts (Score:2)
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
Adblocker's irrelevant (Score:1)
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
Re:Ok, I give... (Score:2)
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.
Who needs GIF animation? (Score:2)
[GIF animations a]re as much a part of the web now as HTML. PNG needs animation support.
There's always MNG [libpng.org], 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?
Shock Horror!!! (Score:1)
Re:Fonts (Score:1)
treke
Need clarification on the PNG support and key type (Score:2)
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
Re:Who needs GIF animation? (Score:2)
Gerv
Re:Who needs GIF animation? (Score:1)
Animated gifs display in image browsers.
Hmm... Maybe it's time for a GIF-Animation-to-ASCII-Art-Animation-converter-plu g-in for lynx?.. :-)
Re:USA supports murder and torture. Please Read. (Score:1)
Completely offtopic (Score:2)
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 [mozilla.org] and comment or vote!!
Re:Sweet... (Score:2)
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 [velocinews.com])
Re:Sweet... (Score:1)
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.
Re:JNG (Score:1)
Re:Ok, I give... (Score:1)
One better (Score:2)
Free (beer) Fonts (Score:1)
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.
Re:JNG (Score:2)
For FPX support on Linux, Image Magick [imagemagick.org] seems to have read support and it is supported by JIMI (Java image file I/O library) and JAI (Java Advanced Imaging). I have some FPX codec source code from JAI that I want to look at when I have some time left.
Re:Fantastic news! (ack, I hate IE) (Score:1)
Re:NS had weak alpha since 3.0 (Score:1)
what about beta channels? (Score:1)
Internet Explorer 5.5 has this built in too... (Score:2)
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)
Re:M16? (Score:3)
~luge
Fonts (Score:2)
-----------
"You can't shake the Devil's hand and say you're only kidding."
Re:Sweet... (Score:1)
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 disagree (Score:1)
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.
Re:Ok, I give... (Score:1)
M16? (Score:1)
---
Re:Fonts (Score:4)
Re:Sweet... (Score:1)
Re:Ok, I give... (Score:2)
I'm going to have to let go of the bitterness... I assumed it had been given up. Yay!
Re:Fonts (Score:1)
Thanks guys.
Re:Ok, I give... (Score:5)
Re:Sweet... (Score:1)
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
Re:Shock Horror!!! (Score:1)
Mod this up (Score:1)
Seriously, the people reading at +2 should be able to read this, it's well done.
Re:Important bug not given enough attention. (Score:2)
Weird way of getting attention to a bug. Anyway, you can vote for bugs [mozilla.org] 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 [mozilla.org] to find other and more fatal bugs.
Re:Ok, I give... (Score:1)
Re:Sweet... (Score:3)
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 [pango.org] 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.
Re:USA supports murder and torture. Please Read. (Score:2)
Well at least you act like it.
Re:Ok, I give... some examples (Score:1)
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?)
PNG Alpha demo (Score:2)
Here's a nice demo:
http://www.pp.htv.fi/hsivon e1/css-test/bitmapstyle.html [pp.htv.fi]
View the source. Check out the PNG in the GIMP. very cool.
Re:NS had weak alpha since 3.0 (Score:1)
Re:Why the wait? (Score:1)
Re:Who needs GIF animation? (Score:1)
Re:Need clarification on the PNG support and key t (Score:1)
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.
Re:Sweet... (Score:1)
You can tell it is not AA by looking at fonts which have been scaled very small.
-- Thrakkerzog
Re:PNG Alpha demo (Score:1)
I didn't make it actually. But like I said everything you need to know to do it is in the source and the image.
Fonts, Antialiasing, Etc (Score:4)
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.
Re:Fonts, Antialiasing, Etc (Score:2)
--
This isn't flamebait! (Score:1)
--bdj
Re:USA supports murder and torture. Please Read. (Score:1)
Re:Ok, I give... (Score:2)
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?
Re:Need clarification on the PNG support and key t (Score:1)
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).
Re:Fonts (Score:5)
inspected it real close - and no antialiasing was evident.
There is no standard way of doing font antialiasing in X - and I suspect that the way the Gtk-antialiasing works is rather high-bandwidth, andonly works with certain outline fonts, although I haven't looked into it - I suspect it renders the glypghs with an internal library, and sends them as full bitmaps - rather intensive...
The KDE crowd are proposing an extension to the X server to handle Font antialiasing, rather like GLX or DPS, but many existing applications would have to be recoded to take advantage of it (although applications using only Qt or Gtk calls should be fine, since that's another layer of abstraction)
Why? Because in the standard X protocol, font glyphs are defined as 1-plane bitmaps. Black and White. Any antialiasing done to them at that stage just blurs the font a bit - to do proper font antialiasing, you have to produce a multi-level brightness map of the font, and merge it with the existing graphics - i.e. it has to be a two-way interaction for true antialiasing. The current X protocol makes no provsion for that, so a protocol extension would be necessary. Another thing - make provision for multicolor fonts in the protocol extension, guys! (i.e. do _colour_ antialiasing on colour outline fonts (there aren't many yet (epson supply a few with their printers), but they exist).
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...
Re:Fonts (Score:1)
No, if it is done right unchanged applications will draw antialiased fonts. There may be some requirements: they must use a TrueColor visual, the bitblit must be Copy, they must select a font that is actually an outline font, etc, but many applications will already satisfy these requirements.
I think any solution that does not make old applications work should not be accepted, ie we don't need another "extension" for this. Even MicroSoft did their anti-aliased font interface correctly, ie "old" applications got it with no rewrite.
The interface to the font storage in X does need to be rewritten, and here I recommend that the implementors go totally ape and rip out ALL the old crap. There is no reason to support any of the old font servers.
Re:Need clarification on the PNG support and key t (Score:1)
>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/
Re:Who needs GIF animation? (Score:1)
Re:Sweet... (Score:1)
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!
Re: (Score:1)
Re:Fonts (Score:1)
If you're talking about the GNOME canvas then no.
The gnome-canvas-text item is majorly screwed in antialiased mode.
It is possible to do it by creating a custom widget that draws what freetype creates though.
Re:Why the wait? (Score:1)
Re: (Score:2)
Re:Sweet... (Score:2)
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 [themes.org], Kaleidoscope [kaleidoscope.net], 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 [velocinews.com])
Re:USA supports murder and torture. Please Read. (Score:1)
Re:Sweet... (Score:2)
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 [velocinews.com])
Many people! (Score:2)
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 [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.
Re:Sweet... (Score:2)
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 [velocinews.com])
Re:Why the wait? (Score:1)
Important bug not given enough attention. (Score:2)
--
Re:Fonts (Score:2)
-----------
"You can't shake the Devil's hand and say you're only kidding."
Re:Allright, that's enough (offtopic) (Score:2)
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."
Re:One better (Score:1)
Re:Adblocker's irrelevant (Score:1)
Re:Fonts (Score:1)
There is no standard way of doing font antialiasing in X
Correct.
The current X protocol makes no provsion for that, so a protocol extension would be necessary.
It's not the extension that's difficult to implement; it's the internal server support for alpha-blending. We'll want to use alpha-blending for many purposes (anti-aliased fonts, translucent blits, translucent windows etc.), and we only want to implement it once in the driver. So what is important is defining internal X server interfaces that are useful for a variety of extensions and still easy on the driver writers.
As was announced some time ago on /., Keith Packard is working on a rendering extension for XFree86. In the process, he will doubtless implement all the internal interfaces needed. Once that happens, you may expect to see a number of interesting server extensions.
Re:One better (Score:2)
Alpha blending is not the final solution (Score:2)
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
Re:Sweet... (Score:2)
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 [velocinews.com])