2013-05-02 10 views
5

के लिए डेटा यूआरएल छवियों को पढ़ने योग्य नहीं है मेरे पास 2 डी बारकोड जेनरेटर (जावा) बैकएंड पर कुछ बारकोड बना रहा है। यह मुझे डेटा यूआरएल देता है और मैं उन्हें जावास्क्रिप्ट का उपयोग कर क्लाइंट साइड पर सेट करता हूं। क्रोम, फ़ायरफ़ॉक्स में सभी ठीक काम करता है। लेकिन आईई 8 में नहीं (बेशक!) हालांकि छवियों में से आधे काम करते हैं और आधे काम नहीं करते हैं।आईई 8

मेरी छवियाँ कुछ सौ बाइट्स (इतना तो 32 केबी कम)

यहाँ एक उदाहरण नहीं IE8 में काम कर रहा है कर रहे हैं:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAAAAADFHGIkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAEnRFWHRTb2Z0d2FyZQBCYXJjb2RlNEryjnYuAAAAgklEQVR42nVRixKAMAjy/3+a2hBwdVtdD1RELFxOXS6+9v1+F/+ICFs5jpGqsQWSosy3MQbVGSEDC7q4FaQrRiJDepJ1iG2sATggaqkeCc3VqicDDu6omgk1VdmS4W3Uq4sr4hE8llSYKe7GXsTxTPdZTdlyLQA4xrKQOit+Ryv7nwfFATbY5mERHQAAAABJRU5ErkJg

यहाँ एक उदाहरण में काम कर रहा है आईई 8:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFMAAABTCAAAAADG2WTcAAAACXBIWXMAACZzAAAmcwHzbHUKAAAAEnRFWHRTb2Z0d2FyZQBCYXJjb2RlNEryjnYuAAABAklEQVR42u2ZwQ7AIAhD+f+f3nbwMGwBl3hYg1xM5ngmUBE3u/abCTHtMTZcS4N3O0z3dNiYg+eeickZ02LMVzRcPJ0DD77zPsw5CQv6BGaYIwkmxo6+/V7S2CKHGShvYaNDmngN+T0TfGk9Y/E0DL4YkxVsWCQsSGGOOjPhHaNVfM5W2YMpMCFu2A3QQyHb722ZkQAT+dLzVJEJvqz4hYqc1H2Y4XHgU0WPCmzFxJhMjrTO00K3uDd7MXm8SSdKc1fej/7LLGTK+8yvPW0jZrGZ15sQXWbUGCTXOXIoiDGLLx3RUN1lOjOzCp5MkzZUmlkIM9JnGs9ezF2mxuz8r2e33b2PHKlEJ4PKAAAAAElFTkSuQmCC

यहां एक fiddle है। जेएस फिडल आईई 8 में इतना अच्छा काम नहीं करता है इसलिए परिणाम देखने के लिए this link का उपयोग करें।

आप मिल गया है, तो इस समस्या के कारण के बारे में एक विचार साझा करें :)

+0

एक मूल आईई 8 बग होना चाहिए, यह आईई 10 में browsermode IE8 के साथ मेरे लिए काम कर रहा है। – Christoph

उत्तर

3

किसी कारण से असफल रहने के बेस 64 डीकोड .png अमान्य है। यदि आप छवि डाउनलोड करते हैं और इसे फिर से सहेजते हैं तो फाइलसाइज अलग होता है।

मैं पुन: सहेजी गई प्रतिलिपि के लिए मूल छंद 40 9 के लिए 237 बाइट्स देखता हूं।

यह pngcheck उपकरण के साथ पुष्टि की जा सकती है।

Z:\pngcheck-2.3.0>pngcheck.exe original.png 
original.png EOF while reading CRC value 
ERROR: original.png 

Z:\pngcheck-2.3.0>pngcheck.exe re-saved.png 
OK: re-saved.png (24x24, 32-bit RGB+alpha, non-interlaced, 82.2%). 

निम्नलिखित मान्य re-saved.png बेस 64 एन्कोडेड डेटा का उपयोग करना IE8 में समस्या का समाधान होता।

background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAABJ0RVh0U29mdHdhcmUAQmFyY29kZTRK8o52LgAAAPlJREFUSEu1VdESwyAM6v7/o7vpqYcEova6vnRmNSRA9HP/nuufTwMorwL06rvm5MQI0n9X1FZAialCOD6+wY09kYqdgE15dpJx9QjGHYfukCJFBbbOHeLa/Wc1QDDFv6OW4xPAqZCuCKkBU6XcEqprjurfSoe5TRlFmVVDoRkAWzOztLP40IDtpShjlznX2TlALhFATbeb5kcuYhGzM4vnJsxBRoPiWek0dc9UZMcAT26oFmw7ClVcq7F3+rCdrQacwFGVHRvsvLpebXD+lsngwrL3wVI0uHB2DBE6UMezGkI11dtn0Yo2dcko90kN1FA9jQ0A9veb6y86oobBWhxQUgAAAABJRU5ErkJggg==); 

मुझे लगता Chrome और Firefox CRC साथ अधिक उदार होते हैं।

+0

thanx, हम एक अद्यतन लाइब्रेरी की खोज करेंगे या पीएनजी के स्टैड में जेपीजी आज़माएंगे। अच्छा उपकरण बीटीडब्ल्यू। – VDP