Invia un'immagine base64 in un messaggio di posta elettronica HTML


86

Utilizzando un editor di testo RTF, i nostri utenti possono trascinare e rilasciare un'immagine salvata dal desktop all'editor. L'immagine appare e viene visualizzata correttamente nella pagina web dopo l'invio.

Poiché l'immagine non viene caricata da nessuna parte, l'editor salva l'immagine come immagine con codifica base64.

<img alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4QAAAFKCAIAAADKUQaBAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAP+lSURBVHhepP1p32zb

eccetera.

Ma non viene visualizzato, non su iPhone, né su due diverse versioni di Outlook. L'immagine è semplicemente rotta. Vogliamo restare con base64 perché funziona già con la pagina web e per la possibilità di visualizzare un'immagine se l'utente è offline.


Risposte:


126

Il supporto, purtroppo, è nella migliore delle ipotesi brutale. Ecco un post sull'argomento:

https://www.campaignmonitor.com/blog/email-marketing/2013/02/embedded-images-in-html-email/

E il contenuto del post: inserisci qui la descrizione dell'immagine


2
Contrassegnato come risposta perché è semplicemente la risposta: il supporto fa schifo per base64 e dovresti cercare di evitarlo quando puoi. Siamo riusciti a farli funzionare, in realtà c'era un bug nel caso di questa domanda. Tuttavia, abbiamo dovuto imporre l'utilizzo di Outlook 2007. Apple funziona perfettamente con le immagini base64.
Vael Victus

10
Supportato in Outlook 2003, ma non supportato in Outlook 2007? Cosa stanno pensando?
cytsunny

5
qual è l'alternativa?

Grazie per questo, stavo proprio per scrivere un post SO con il mio campione base64. Ho pensato che controllando la mia email risultante in due browser (GMail e Outlook) e verificando che il mio testo base64 non fosse danneggiato, avrebbe dovuto funzionare bene ..
Memetican

@AkhilJain questo ha funzionato per me stackoverflow.com/a/36870709/5536005~~V~~singular~~3rd
radbrawler

57

Un approccio alternativo potrebbe essere quello di incorporare immagini nell'e-mail utilizzando il cidmetodo. (Fondamentalmente includendo l'immagine come allegato e quindi incorporandola). Nella mia esperienza, questo approccio sembra essere ben supportato in questi giorni.

inserisci qui la descrizione dell'immagine

Fonte: https://www.campaignmonitor.com/blog/how-to/2008/08/embedding-images-revisited/


3
effettivamente funziona, ma purtroppo alcuni servizi di posta elettronica ti addebiteranno l'invio di allegati.
Sombriks

19
Inoltre, molti client, inclusa l'interfaccia web di Gmail, aggiungeranno una copia di tutte le immagini allegate alla fine del messaggio, il che è molto, molto brutto.
Daniel Saner
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.