Does it happen with all large images at all sites, or just a specific one that you’re interested in? If so, it’s possible that the site has some Satanic layering thing or other code that works around the IE resizing. If not, then maybe something in your Registry is interfering. Yes, I know that IE’s options are supposed to set it, and yet sometimes it doesn’t “take”; I don’t know why. To check, open your Registry with Regedit, and go to
The Auto image resize feature only works for displaying a naked image, ie the url you navigate to is someplace.com or whatever.
Different web pages on different sites can react differently to your window size depending on what html they send to teh browser. So on some sites you’ll see image scaling behavior and on others you won’t. That’s under the control of the website author, not the browser operator.
Yes - as said earlier, this feature only works on images, not on pages that contain images.
E.g. Look at what’s in your address bar. What are the final few letters after the last dot? Because it won’t work on blabla.php or blabla.html. It will only work on blabla.jpg, blabla.png, or blabla.gif.
If you want to resize a local image, you can use any reasonable image-editing program: Paint, ImageMagick, Photoshop, the GIMP, …
But IIUC you have a problem with large images embedded in remote HTML pages; you’d like the images to be smaller even if the HTML says otherwise (or, more likely, doesn’t say at all, in which case the image size defaults to its “natural” 1-pixel-per-pixel size). It’s hard to give a good general fix here. However, one approach you could use would be to write a small JavaScript applet which looks for large images in a web page and forces them to resize. Here is a very basic version, not made browser-independent or otherwise very nice:
javascript:
ia = document.getElementsByTagName("img");
for ( n = 0; n < ia.length; ++n ) {
x = ia[n].offsetWidth;
y = ia[n].offsetHeight;
sx = sy = 1;
if ( x > 500 ) sx = 500/x;
if ( y > 400 ) sy = 400/y;
s = sx < sy ? sx : sy;
ia[n].style.width = Math.floor(s*x) + "px";
ia[n].style.height = Math.floor(s*y) + "px";
}
void 0
This code loops through all images on the current web page (it will not descend into frames or iframes, however; it also won’t resize background images or embedded Flash); whenever it finds one more than 500 pixels wide or 400 pixels tall it rescales (isotropically) to fit in a 500x400 box. You may want to change this code to look for images with a large area (e.g., x*y>1000000) to avoid rescaling things like separator bars and struts, which are sometimes used in structural layout of web pages.
To use this, create a version of this code on a single line, like this:
and paste it into your address bar when you’re at an offending web page. To make it easier, you can save this code as a “bookmarklet” available by a click on your Links toolbar, or presumably whatever the IE7 equivalent is. (On IE6, create a new Link by dragging something onto the Links toolbar. Then right-click it to get Properties. Under the “General” tab give the link a name like “Image resize”; under the “Web Document” tab paste this code in as the URL.)
This works for me on IEv6 and Mozilla 1.7.3; I don’t have IE7 so I can’t test it there.