2010-04-15 6 views

risposta

19

Forse Inline Images with Data URLs idea?

immagini in linea utilizzare i dati schema URI per incorporare le immagini direttamente all'interno di web pagine. Come definito dalla RFC 2397, gli URI dei dati sono progettati per incorporare piccoli articoli come dati "immediati", come se fossero referenziati esternamente. L'utilizzo delle immagini in linea salva le richieste HTTP su oggetti con riferimenti esterni.

System.Drawing.Image image = GetImageFromSomewhere(...); 

byte[] imageData = ImageToByteArray(image); 
string imageBase64 = Convert.ToBase64String(imageData); 
string imageSrc = string.Format("data:image/gif;base64,{0}", imageBase64); 

e poi da qualche parte nella pagina:

<img src= "<%= ImageSrcBytes %>" /> 

per quanto ne so questo lavoro per Opera 7.2+, Firefox, Safari, Netscape, Mozilla e IE8 + (IE8 fino a 32kb).

Per la versione precedente di IE è disponibile una soluzione alternativa - MHTML.

L'esempio su come farlo è here.

+0

fantastico, grazie, ha funzionato brillantemente. Molto apprezzato – Webcognoscere

+1

Questo non sembra funzionare in Internet Explorer 7/8, nessun suggerimento – Webcognoscere

0

Il browser utilizza l'attributo src per inviare una richiesta separata al server, per ottenere il contenuto dell'immagine. Non visualizza i byte nello src come l'immagine stessa.

Quindi sarà necessario ricordare quei byte (sessione?) E utilizzare un gestore (l'url inserito nell'attributo src) per consentire al browser di richiederli.

Problemi correlati