Internet Explorer et d'affichage de l'image en Base64
Dans le but de manipuler plus facilement des images différentes sur le côté client avec Javascript, j'ai écrit une fonction sur le côté serveur (en VB 2010) pour convertir un fichier dans une chaîne base64 que j'envoie au client.
Quand je l'ai essayé dans Internet Explorer 8.0 avec 3 images différentes, 1 portrait et 2 paysages, j'ai réalisé que seul le portrait était affiché entièrement, en attendant les deux images du paysage ont été tronqués (je peux voir juste la partie supérieure de l'image).
Je pensais que j'avais un bug dans ma fonction de conversion, jusqu'à ce que j'ai essayé de mon local page avec Firefox: chaque image est parfaitement affichée par Firefox.
Il ya donc ma question: Est-ce un bug connu d'Internet Explorer ? Si la réponse est oui, Est-il bien connu remède pour que le bien-connu de bug?
- Lien vers votre page de test?
- C'est bien connu, bug, c'est à dire a une limite de caractères imposée sur tous les Uri, ce qui signifie que les Données de Schéma d'Uri aura un peu de contenu tronqué.
- En plus de Andrew Dunn commentaire de votre mieux à l'aide d'un système de fichiers ou une base de données (comme SQL 2008 que vous avez dédié à servir les images). Je ne pense pas que vous allez venir à proximité de la compression des protocoles tels que jpg, gif, png. Aussi j'ai trouvé à l'aide d'un Chemin d'accès Virtuel Fournisseur de servir des images à partir d'une base est beaucoup plus lent qu'un système de fichiers donc je vous recommande de repenser la conception de votre.
Vous devez vous connecter pour publier un commentaire.
IE8 ne peut le faire en Base64 URI des images jusqu'à 32 ko. C'est un peu ennuyeux limitation, mais vous pouvez toujours vous en tirer avec des icônes/etc. Gardez à l'esprit que, encodé en Base64 les images sont en moyenne 33% plus de données envoyées en bas du tuyau, de toute façon, donc c'est... eh, tu sais, utilisez votre jugement.
Pour toute personne intéressée, il est également possible de faire ces travaux dans IE6/7 (sans, je pourrais ajouter, que 32 ko limite...): http://venodesigns.net/2010/06/17/you-got-your-base64-in-my-css/
IE8 est limitée à 32 ko. Un moyen de contourner cela est de simplement servir les images en "tuiles" où chaque tuile est de moins de 32 ko.