2012-11-12 27 views
5

में मैंने आईई 9 में देखा है कि मैट्रिक्स DXIImageTransform का उपयोग घुमावदार पाठ पिक्सेललेट करेगा। मुझे आईई 8 या 7 में यह समस्या नहीं है। आम तौर पर मैं आईई 9 में सीएसएस 3 विकल्पों का उपयोग करता हूं लेकिन मेरे नियंत्रण के बाहर कारणों के लिए, पृष्ठ क्विर्क मोड में प्रस्तुत करता है (वैध एचटीएमएल 5 आईफ्रेम किसी तीसरे पक्ष के पेज में एम्बेडेड नहीं है)DXIMageTransform.Microsoft.Matrix धुंध आईई 9

इस कोड मैं का उपयोग कर रहा है:

<!--Looks like crap but is my only option in quirks mode--> 
<span style="position:absolute; 
    filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', 
    M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);"> 
    Does this make my butt look pixelated?  
</span> 

IE8 में, परिणाम घुमाया पाठ चिकनी है, लेकिन IE9 में यह बहुत pixelated है। यह करने के लिए की तुलना में (जो quirks मोड में काम नहीं करता है)

<!-- looks great but doesn't work in quirks mode--> 
<span style="position:absolute; top:150px; -ms-transform: rotate(-45deg);"> 
    Does this make my butt look pixelated? 
</span> 

कार्रवाई में यह देखने के लिए, में इस बेला की जाँच IE9 http://jsfiddle.net/U4CCD/3/

मेरा प्रश्न, मैं पाठ कैसे घुमा सकते हैं IE9 में, quirks मोड में, यह सभी pixelated और धुंधला नहीं दिखता है। आईई 9 में मैट्रिक्स परिवर्तन चूसने शुरू क्यों हुआ?

यदि आप भाग्यशाली हैं कि IE9 चलाने के लिए पर्याप्त नहीं है, तो मैं यही देख रहा हूं। स्पष्ट उदाहरण यह है कि यह आईई 8 में कैसा लगता है और यह सीएसएस 3 ट्रांसफॉर्म का उपयोग कैसे करता है।

IE9 sucks

उत्तर

4

अंत में मैंने पाया यह केवल मेरे वर्तमान विन्यास के साथ नहीं किया जा सकता है। हालांकि, मैं अपने वैध HTML5 पृष्ठ को उस ऑब्जेक्ट में लपेटकर इसके आसपास काम करने में सक्षम था जिसे आईफ्रेम में एम्बेड किया गया था। आईई 9 में यह मेरे पृष्ठ को मानक मोड में आईफ्रेम में प्रस्तुत करने की अनुमति देता है और एसवीजी ट्रांसफॉर्म का उपयोग करता है जो साफ दिखता है। मैंने निम्नलिखित रैपर एएसपीएक्स स्क्रिप्ट बनाई:

<%@ Page Language="C#" %> 

<% 
    string url = "app/path"; 
    if(!String.IsNullOrEmpty(Request.QueryString["path"])) 
     url = HttpUtility.UrlDecode(Request.QueryString["path"]); 

    url += "?i=1"; 
    if(!String.IsNullOrEmpty(Request.QueryString["id"])) 
     url += "&id=" + Request.QueryString["id"]; 

    if(Request.Browser.Browser!="IE"||Request.Browser.MajorVersion!=9) { 
     Response.Redirect(url); 
    } 
    url += "&quirky=1"; 
%> 
<html> 
<head><title></title> 
</head> 
<body style="width:100%; height:100%; margin:0; padding:0; overflow:hidden;"> 
<object type="text/html" data="<% =url %>" style="overflow:hidden; width:100%; height:100%"></object> 
</body> 
</html>