[question] How Come Wallpapers Resize So Poorly

Ok, its kjinda difficult to explain. Lets say i have a 1024x768 sized wall, on a desktop thats sized the same size, and it looks fine, but when i try and resize the 1024x768 to 1600x1200 and apply it to my desktop of 1600x1200 it looks awfull. Its the same monitor, the final results are exactly the same (besides window border sizes, icons etc), but it looks reeeaally bad.

----------------------------

This is a [Question]

The Topic Has Been Tagged

// Seph

#202427

A wallpaper at 1024 x 768 has exactly that many pixels contained in the image. Desktop images, i.e. jpg, png, bmp are raster graphics and cannot be "upsized" without degrading and becoming very pixelated. Vector graphics draw the pixels with a mathematical formula and are therefore scalable any any resolution. Problem is, you can't display vector graphics as a desktop.

#202429

Your monitor displays pixels very well, so that no matter what res you have it at, it looks good, the problem is, no matter what, if you size up a picture, unless abstract + blur, it won't look good, even on the same monitor.

// Lou

#202473

I suspect Windows to call stretchblt() which would simply "stretch" the pixels. For more advanced resizing techniques, some filtering and anti-aliasing must be done, which stretchblt() does poorly.

#202474

but i dont get how changing the reselution has such a detemetrial effect on the final image, when it displays the same size anyhow.

#202483

A 1024x768 image has only 788,736 pixels at 72dpi (standard web rez). When you try and increase image size (to 1600x1200, 1,920,000 pixels) the software has to look at the surrounding 4 pixels of every pixel and 'interpolate' those pixels together to get an approximation of colour (hue, density, saturation etc), then combine that information to create new pixels which look somewhat like the original.

Basically the problem is software has to make up information which doesn't exist.

Hope that says it, it's late and I'm tired... my spelling probably sucks too :)

#202486

I asked this question the other day on Neowin.net and got a real good answer...It is because when you are shrinking a picture you are taking information out of the file...but when you make the picture larger you are having to add information but the computer doesn't know exactly where it should go, so it actually has to guess based on the colors used in the picture...I hope this helps..

#202507

Originally posted by AndreasV@Aug 14 2004, 06:40 PM

I suspect Windows to call stretchblt() which would simply "stretch" the pixels. For more advanced resizing techniques, some filtering and anti-aliasing must be done, which stretchblt() does poorly.

<{POST_SNAPBACK}>

Lets look at it like this...

A wallpaper at 1024 x 768 has pixels that contain color information, much like puzzle pieces....if the native size of the completed puzzle are 100" x 80" and you expand the pieces to fit in a 120" x 100" block then you will have holes in the puzzle. A raster graphic cannot tell the gui to add pixels based on resolution. It is hardcoded in the file.

Genuine Fractals is a 3rd party plug-in that will analyze a raster graphic and add pixels by averaging the color spread from pixel to pixel but it is still limited.

#202517

@digitaljames: I'm talking about the underlying windows implementation now. Advanced graphics libraries can do filtering such that resizing looks much better than the "default" stretching. Ofcourse the quality will never look as good as an image of the size you are resizing to, but it can look better than the default stretchblt() by using more advanced algorithms...

#202525

just download walls at the highest res you can and scale them down whenever you need a smaller res. A general rule of thumb is you never want to scale up...only down.

#203298