eugenii / jqueryrotate

Automatically exported from code.google.com/p/jqueryrotate
1 stars 0 forks source link

Blury Images in IE7 #24

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
If you rotate an image in IE7 it seems to be kind of blury for some reason.

I used the IE7 on WinXP with the latest version of your plugin

I tried to use the native filter matrix rotation instead, but it happened that 
IE7 deleted my alpha channel from my png file. I provided you with an image to 
compare results in IE7 and FF3.6

Original issue reported on code.google.com by my.rich...@gmail.com on 25 Feb 2011 at 8:30

Attachments:

GoogleCodeExporter commented 9 years ago
are you also trying to scale image? If yes - then try not to do that.

Anyway IE using different scaling mechanisms than firefox and unfortunatelly 
(as you see) its kinda blury :(

I can try to look some infos on web, but as far as I know You can't (as 
developer) control how the rotation is handled by browser:/

Original comment by wil...@gmail.com on 28 Feb 2011 at 10:22

GoogleCodeExporter commented 9 years ago
I asumed it's not possible to somehow get them sharp. I didn't try to scale the 
image. It's the original size, but rotated.

Original comment by my.rich...@gmail.com on 28 Feb 2011 at 10:42

GoogleCodeExporter commented 9 years ago
Well there is one option that would work here... Instead of using VML - use dx 
filter, but that would be a quite big change and I dont know what change in 
performance would be here o_O need some tests hmmm

Original comment by wil...@gmail.com on 28 Feb 2011 at 11:09

GoogleCodeExporter commented 9 years ago
i have already tried the rotation matrix of IE7 and had the problem that it 
killed my alpha channal of my png-files. so this might not be the best way of 
fixing this problem. just if you can fix the alpha channal problem as well...

Original comment by my.rich...@gmail.com on 28 Feb 2011 at 11:13

GoogleCodeExporter commented 9 years ago
Well, you're right here... hmm I could take care of alpha blending but IE got 
nasty bug with handling alpha opacity using filters makes this unacceptable 
solution (Freezing synchronous loading of images can block IE completly when 
using filter for alot of transparency images). It seems that we will have to 
live with blurred image, or with bad performance solution with nice image :(

Original comment by wil...@gmail.com on 28 Feb 2011 at 11:17

GoogleCodeExporter commented 9 years ago
Last option here would be to use filter.Matrix on a VML image, but this sounds 
already quite hardcore. Maybe I will give it a try

Original comment by wil...@gmail.com on 10 Mar 2011 at 12:08

GoogleCodeExporter commented 9 years ago
After i decided to rotate them with php i still faced the same problem but this 
time all browsers showed blurred images of course :) i remembered the 
Nyquist–Shannon sampling theorem from uni an decided to scale them up before 
i rotate them. It worked of course. so if it would be possible to scale the 
images down after you rotated them you would get even better results in all 
browsers.

Original comment by my.rich...@gmail.com on 10 Mar 2011 at 6:53

Attachments:

GoogleCodeExporter commented 9 years ago
Well... So I did what I've told and ... This is possible!

I mean to fix your issue you would have to use a VML image and then rotate it 
using DX.filter - then you should have both -> png alpha fixed and rotation in 
place. However My plugin dont do that right now, and probably never will (you 
will have to find png fix on VML and then use matrix rotation plugin - i think 
there are some on the web).

I currently researching possibility to unify rotating whole elements (not only 
div) so this might be also possible in near future with this plugin. 

Hopefully this helps!

Original comment by wil...@gmail.com on 11 Mar 2011 at 10:12

GoogleCodeExporter commented 9 years ago
"(not only div)" - I mean of course "(not only img)"  :)

Original comment by wil...@gmail.com on 28 Mar 2011 at 7:02

GoogleCodeExporter commented 9 years ago
I noticed that the following line of code is exacerbating the blurriness:

this._container.setAttribute('coordsize',width-1+','+(height-1)); // This -1, 
-1 trying to fix ugly problem with small displacement on IE

I removed the two "-1" adjustments and the image looks much better.

Original comment by dcit...@gmail.com on 9 Apr 2011 at 9:25

GoogleCodeExporter commented 9 years ago
Thanks for info!

This is then a quite problematic now as I will need to decide (or parametrize) 
if we want to keep position of images pixel perfect or have image correctly 
displayed.. ehh.. any ideas welcomed :)

Original comment by wil...@gmail.com on 10 Apr 2011 at 9:12

GoogleCodeExporter commented 9 years ago
Perhaps it should be an option--different applications have different needs.

In my case, I would much rather have a non-blurry image that may not be in the 
exact correct location (though, in fact, my rotated image *does* appear to be 
in the exact correct location for whatever reason--perhaps my specific HTML is 
not exposing the displacement bug).

Or maybe there's an altogether different solution. What was the IE bug that you 
avoid by changing the size of the VML node?

Original comment by dcit...@gmail.com on 10 Apr 2011 at 9:49

GoogleCodeExporter commented 9 years ago
Oh I dont remember exactly what bug was it but you can see it only when zooming 
in - displacement is around 1px. You could see that when you rotate using 180 
angle of a square object. After rotating there is like 1px displacement back 
there so thats why this change was introduced.

I think i will add this as a parameter for next release, unless I will go 
completly with 3rd version of plugin that got different approach for rotation.

Original comment by wil...@gmail.com on 11 Apr 2011 at 1:17

GoogleCodeExporter commented 9 years ago
As this is kind of specific change I decided to not introduce it into a main 
code, but rather keep in mind if anyone else need it in future. Just let me 
know if there is more people requiring this feature.

For now marking as Wont Fix

Original comment by wil...@gmail.com on 4 Aug 2011 at 2:57