Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Hello, visitor from the future!

If you landed here because you're as annoyed as I am, consider voting for this thingy on Microsoft's Uservoice page for Windows 10.


This has been bugging me on Windows 7 as well, and much to my chagrin Microsoft didn't bother addressing that issue in Windows 8. Take this image for example:

1 (Click to open original unaltered image.)

It's made for retina Macbooks, so naturally it's being downscaled when setting it as wallpaper on my 1680x1050 screen. Windows 8 manages to make it look like shit, see this screenshot:

2

Is there any way of making Windows always use the original image, not some JPGized-to-hell version of it?

share|improve this question
4  
What happens if you scale down the image manually to 1680x1050 and then set the resulting JPEG (or, even better, PNG) as a wallpaper? –  Claudius Nov 17 '12 at 23:27
3  
Original wallpaper shows up fine here. What wallpaper display options (Fill, Fit etc.) have you selected? –  Karan Nov 18 '12 at 3:36
7  
Why do you think Windows "jpg"-ify images? It can use png and gif without conversion. But it needs to scale it down to fit the screen if you select "Fit". You are bound to get artifacts with any scale down; if you want perfection, do the rescaling yourself because you can't expect Windows to read your mind or know what you personally think is perfection. –  Peon Nov 18 '12 at 4:37
3  
The "screenshot" looks perfectly fine to me, could you more clearly describe the problem? –  kreemoweet Nov 18 '12 at 5:31
2  
@PeterW. Why are we talking of PNGs anyway when the original you linked to is a JPG as well? –  Karan Nov 18 '12 at 21:45

7 Answers 7

It got better with Windows 10 for the local machine, but it's the same as in Windows 8 for every other computer you log into with roamed themes.

Objective observation

I found the following 3 files:

  • <original_filename.jpg>
    • Path: depends on how you set the background, using the Explorer results in the path of the original file, using something like the Photos app results in a path to a cached copy of the image (but still equal to original quality)
    • Referenced in: %USERPROFILE%\AppData\Local\Microsoft\Windows\Themes\Custom.theme (human readable text)
    • Original quality
    • Reported quality by Gimp: resolution 5000 × 2813 pixels, JPEG quality 98% progressive, subsampling 4:4:4, size 1.9 MB
  • <filename.jpg> (filename should be the same as your original)
    • Path: %USERPROFILE%\AppData\Local\Microsoft\Windows\Themes\RoamedThemeFiles\DesktopBackground
    • Referenced in: %USERPROFILE%\AppData\Local\Microsoft\Windows\Themes\Roamed.theme
    • Reported quality by Gimp: resolution 2698 × 1518 pixels, JPEG quality 75% progressive, subsampling 4:2:0, size 187 KB
  • TranscodedWallpaper (a JPEG file)
    • Path: %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Themes
    • Reported quality by Gimp: resolution 3520 × 1980 pixels, JPEG quality 85% progressive, subsampling 4:2:0, size 336 KB

Trying to save a theme with a custom background will result in the corresponding files being created in Local and TranscodedWallpaper being used to upload or transfer the wallpaper between desktops. Obviously no PNG support (while Win+Print now in Windows 10 automatically saves PNGs to the Screenshot directory), low-fi JPEG, and if you switch themes with sync enabled you get the same low quality everywhere, even on the host with the original file. :(

Best option: Upload your wallpapers as high quality JPEG to OneDrive to avoid resizing artifacts from other formats and turn design/theme syncing off.

Mhhh… when I already have the file on OneDrive, why is there no option to mark it as my wallpaper for desktop/mobile use and enjoy my backgrounds in original quality?


Subjective observation (old part of the answer)

I used the workaround of scaling down my wallpaper to the screen size of my laptop with Gimp in Windows 8. Since I use a transparent PNG from a vector graphic source I just wanted to change the background gradient and also try if a larger version would look better after migrating to Windows 10 or if any other changes were made. So I remade my wallpaer in the original resolution of 5000x2813 pixels with the old background gradient and the new gradient in PNG (processed with optipng -o7) and JPG (Gimp: quality 98%, progressive, subsampling 4:4:4, same settings as for the custom downscaled one). Result: the outlines look very smooth (better than the previous result with the workaround, but Gimps resizer may be to blame here) when using the big JPG and almost no banding artifacts on the primary laptop display (the banding may be caused by the panel itself). There are still noticable resizing artifacts on the external 1080p monitor, which may be the result from upscaling the wallpaper of the primary laptops resolution of 1600x900 (to avoid confusion: of course I use the external monitor as an extension at native resolution).

Booting my VirtualBox Insider VM, I noticed that the wallpaper was updated as expected after setting the newer through the control panel, but it has visible compression and banding artifacts like in Windows 8. (The image in DesktopBackground was 2698x1518 pixels and 187 KB, Gimp tells me it's settings were quality 75% and subsampling 4:2:0).

share|improve this answer
    
Before nuking my hard disk from orbit because Windows 10 bricked itself with faulty updates, I found that I couldn't make out any differences between wallpaper handling in Windows 8(.1) and Windows 10. Same old JPG crap. –  Peter W. Jul 31 at 10:46
    
Also, to be honest, this issue doesn't concern me as much anymore as it did three years ago. I own a Mac now, which allows you to set all kinds of image types as a desktop wallpaper. I only use Windows very sporadically for games that don't support OS X, and a solid black background is good enough for that. –  Peter W. Jul 31 at 10:54
up vote 4 down vote accepted

There was an answer here, I even upvoted it and accepted it as the correct answer, but it seems to have vanished. It went like this:

Open X:\Users\<User>\AppData\Roaming\Microsoft\Windows\Themes\. The TranscodedWallpaper file inside is a JPG image without a file extension, replace it with a 100%-JPG version of the wallpaper you want to use.

Then, open the CachedFiles folder. Inside should be one or more JPG files, each named like this: CachedImage_2560_1440_POS4.jpg (substitute the numbers with your resolution's width and height). Find the one that matches your active resolution, copy its filename, then delete all the files. Copy your wallpaper's JPG version into this folder as well and rename it to whatever you just copied. The actual resolution of the wallpaper does not matter; as far as I could tell, Windows just reuses whatever wallpaper setting was set. ('Fill' for me)

To make your wallpaper just work (and also to stop the OS from undoing what you've done so far) you'll need to revoke the system user's write access. To do that, fiddle with the security settings of the TranscodedWallpaper file and the CachedFiles folder until it looks like this:

Properties dialog for CachedFiles

I don't know what these options are called in English versions of Windows, but I imagine their positions to be the same. The first combobox says 'Allow', the second one makes it so that the permissions are applied to all files and folders inside that folder recursively.

When you're done, log out, then log back in again. If you did everything right, your wallpaper shouldn't look like garbage anymore.

"Look ma, no artifacts!" (Wallpaper taken from Louie Mantia's wallpaper page)

Obviously, there are drawbacks to this method, namely:

  • You have to go through all this permission nonsense every time you change the wallpaper (you might be able to automate this through batch scripts, but I have no idea how to do that)
  • You won't be able to use wallpaper slideshows (at least not the native sort)
  • You can't use actual PNG images, you have to use JPGs

Let's just hope Windows 10 won't be such a colossal disappointment in that regard.

share|improve this answer
    
Might I ask where one can find this ChachedFiles folder? –  Creator13 Mar 16 at 16:01
    
It right inside of X:\Users\<User>\AppData\Roaming\Microsoft\Windows\Themes\. All the important stuff is in the post above. ;) –  Peter W. Mar 16 at 18:21
    
Oh, then it's probably only the case in Windows 8, since I can't find it on Windows 7. Thank you though! –  Creator13 Mar 17 at 15:50
    
Yeah, I only tested this on Windows 8. You might be able to find that folder by doing a file search for "TranscodedWallpaper", that one's been there at least since Windows 7. –  Peter W. Mar 17 at 16:10

Windows 7 - From what I've tried, you need to use Internet Explorer's right-click -> Set as Background option to retain quality.

I've tried a few file types, and the only way I find to retain quality is to use the program to set the wallpaper. Unfortunately for me, I like to use the slideshow option for my wallpaper, and usually drag (copy) my Pictures to the folder on the customize window.

Even if you use any file type and drag to the Internet Explorer folder where your non-compressed photo shows to be, it will render it as a JPEG.

So from what I can see the only way without modding Windows is to have a solo photo as your wallpaper, which you set through Internet Explorer.

share|improve this answer

NO. I can confirm this behaviour on Windows 7 64 bit. It occurs for all image types (PNG and BMP) included whenever the user right clicks a thumbnail and chooses "Set as background". I doubt many people notice the behavior because they are not using technical or well drawn backgrounds.

The workaround that worked for me was to open the image (any format) in IrfanView and use that program's "set as wallpaper" feature. It's in the menu under "Options."

share|improve this answer
    
I removed the part of the rant, which does not add to the answer. As well, the OP is asking about Windows 8; mentioning Windows 7 does not answer the question, and may make this answer un-useful by itself –  Canadian Luke Mar 15 '14 at 20:15
    
This worked for me. Thank you! –  DumpsterDoofus Feb 18 at 22:27
    
I went through the trouble of installing that software, but I can confirm that it works! Simplest method there is I think, if you don't mind to get a new program. –  Creator13 Jun 21 at 19:29

Don't set the wallpaper in Windows 8 using Windows Photo Viewer. Windows Photo Viewer saves a lower quality jpeg and uses that as the wallpaper. Use the Control Panel\Appearance and Personalization\Personalization or just right click and select "Set as desktop background".

Also, since you're down-scaling an image you might want to edit/resize it using photoshop to the native resolution of your monitor. Windows is known to produce low quality (ie. rough) downscaling of images and produces the occasional artifacts on wallpapers.

share|improve this answer

I had this problem myself, searched endlessly for an answer and found none. Until I found someone who did not have this problem, I asked them to share their wallpaper with me and I tried it, sure enough, their wallpaper did not have any on screen artifacts and the resulting compressed wallpaper, was not a shrunken down jpg. In fact, the file size of the "compressed" jpg was larger than the original.

So I decided to look around into the settings on the jpg, nothing unusual that I could see, the image was 1900x1200 at 72.009dpi and 8bit. I decided to scale down my own personal wallpapers to the 1900x1200 size, changed the dpi and bitrate to match the other jpg. After saving my new image, I right clicked on it and chose set to desktop, the resulting image has no artifacts and is no longer compressed. This works for every wallpaper I have.

If you try this, I think you need to make sure you change the image dimensions to match that of what your screen resolution is exactly. Also making sure the dpi is set to 72.009 and 8bit. Try it out, see if this helps anyone. I will be posting this message on all the forums and blogs I see discussing this.

share|improve this answer
    
Resizing the image to the resolution of display produced a perfect result for me. Without knowing my monitor DPI, I exported the JPG as 300 DPI, quality: 100. I manage my images in Lightroom, so I cropped the image to match the aspect ratio of my monitor. Then in LR, exported with: 300 DPI, Resize to fit: <monitor res>, allow enlarge, JPG, quality 100, Sharpen for screen. –  Alastair McCormack Apr 30 '13 at 15:53

In Windows 7, opening the image using internet explorer, then right-click: 'set as background image', used to do the trick.

This seems to do the same thing (unconfirmed) as manually setting the registry value.

share|improve this answer
    
Thanks, but the registry value already points to the real image, not the "TranscodedWallpaper" one, which seems weird. Thanks, Microsoft. –  Peter W. Nov 18 '12 at 22:07

protected by Community Mar 22 at 17:43

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.