HTML5 Tutorial: Come ottenere e impostare un'immagine di base 64 su tela utilizzando toDataURL


Per molte applicazioni web possono essere utili per trasformare l'immagine visiva in una tela base64 HTML5 è in grado di inviare e condividere la rappresentazione. Come questo tutorial vi mostrerà, che non è molto difficile e anche molto facile da caricare un'immagine in una tela HTML5 di base 64. Il metodo toDataURL () di un quadro svolge un ruolo importante in questo processo, e mi mostrerà come usarlo.

In questo tutorial vedremo le due tecniche per la conversione di un'immagine in base di 64 e basare 64 come andare a un'immagine. Vorrei anche discutere alcuni modi possibili di questa funzione può essere utilizzata in siti web interattivi.




Come su un sito web dove è possibile condividere le immagini con altri - che la funzionalità è facilmente implementata con le tecniche descritte in questo tutorial. Dà molti esempi più avanti in questo tutorial.

Qual è la tela HTML5?

La tela HTML5 è uno dei miei preferiti additions al web HTML standard. Con esso è possibile scrivere codice JavaScript per disegnare direttamente sui loro siti web. Ho scritto diversi tutorial che spiegano le basi di come disegnare su una tela e come fare varie cose, come la creazione di testo, cerchi e archi:

  • HTML5 Tutorial: Nozioni di base di disegno
    In questo tutorial vi mostrerò come utilizzare l'elemento canvas HTML5 per disegnare grafici di colori per il tuo sito. L'esercitazione ha due esempi ricchi sono spiegate passo per passo.
  • HTML5 Tutorial: i colori del testo draw ed effetti Fancy
    Si può fare di più che disegnare il testo in HTML5! In questo tutorial vi mostrerò vari effetti per fare alcuni testi di finzione, tra cui ombre, sfumature e la rotazione.
  • HTML5 Tutorial: disegnare cerchi e archi su tela
    Disegnare cerchi e archi in HTML5 può essere una sfida. In questo tutorial vedremo come disegnare cerchi e archi e angoli sono misurati come archi. Questo tutorial contiene molti esempi.

Qual è la base 64?

Base64 è un modo di rappresentare dati utilizzando solo caratteri leggibili, come lettere, numeri e alcuni simboli, come il simbolo. Questi dati possono essere qualsiasi cosa, come ad esempio una foto o un file, ma di solito sono dati che non è solo il testo (altrimenti non ha molto senso in base 64 di conversione, giusto?).

Questa rappresentazione, noto anche come una stringa base64 è molto utile perché può essere utilizzato ovunque che il testo in chiaro può anche essere usato. Rende facile per memorizzare le immagini - è possibile avere più immagini in un file di testo, per esempio.

I dettagli esatti di base64 non sono rilevanti per questo tutorial. Tutto ciò che conta è che base64 è un modo diverso di rappresentare gli stessi dati di immagine visiva, ma in modalità testo. Rimando il lettore interessato a base64 in Wikipedia se vuoi saperne di più.

HTML5 Libri

Come ottenere i dati dall'immagine sulla tela utilizzando toDataURL ()

La tela HTML5 ha un metodo chiamato toDataURL () può essere chiamato a fare un'immagine canvas HTML5 PNG e ottenere i dati di immagine che di tela. Per impostazione predefinita, vi verrà dato un immagine Base64 rappresentazione in formato PNG. In termini più semplici: si ottiene un'immagine PNG, ma è stata codificata in base64. Per () metodo toDataURL, PNG è l'unico formato di immagine che è supportato da tutti i browser web HTML5-compliant. Alcuni browser supportano diversi formati di immagine.

È possibile chiamare toDataURL con un tema come "image/jpeg" o "image/png" per specificare il formato di immagine. Non dobbiamo preoccuparci di questo, e possiamo semplicemente chiamare toDataURL senza argomenti per un'immagine PNG che rappresenta base64. Si noti che lo standard HTML5 richiede solo browser a supportare PNG toDataURL quindi è meglio utilizzare questo formato immagine se si desidera rendere il vostro lavoro codice in tutti i browser web.

Nel codice qui sotto abbiamo una tela e ci chiediamo il toDataURL () per ottenere i dati di immagine:

La variabile imgData ora contiene rappresentazione base64 dell'immagine attualmente sulla tela. Sembra qualcosa di simile: i dati: image/png, base64 iVBORw0 ... AAAElFTkSuQmCC. Ho mostrato solo l'inizio e la fine dei dati, come sarebbe troppo mostrare tutto. Come si può vedere da "dati", allora il tipo di immagine ("image/png"), allora la codifica ("base 64") e, infine, tutti i dati di immagine in testo.

Semplicemente chiamando toDataURL () trasformare l'immagine in una rappresentazione testuale. Questa è una buona cosa, dal momento che il testo è molto più facile da condividere o posta. In realtà, se si dovesse copiare tutto il testo rappresentazione dell'immagine e inviarlo a un'altra persona, è possibile incollare nella barra degli indirizzi del browser e vedere l'immagine.

Design Books Web

Cosa possiamo fare con toDataURL ()?

Cosa possiamo fare con questi dati?

  • Potremmo inviare la stringa base64 al server per la memorizzazione in un database. Un utente può creare un'immagine con una tela HTML5 editor di immagini, e l'immagine può essere inviato al sito. L'immagine può essere memorizzata come base 64 stringa nel database e può essere facilmente caricato e visualizzato su una tela di nuovo (vedere più avanti in questo tutorial su come fare). La gente potrebbe creare e dell'arte shart questo modo.
  • Possiamo creare la funzionalità di undo/redo per questo editor immagini su tela. Si può tenere un registro di tutte le modifiche apportate dall'utente, e potrebbe salvare ogni versione dell'immagine come stringa base64. Se l'utente ha fatto un errore e si vuole annullare l'ultima modifica, quindi è possibile scaricare l'ultima base 64 e mostrare sulla tela.
  • A "Invia immagine per e-mail". Come si può o non può sapere, è utilizzato anche quando un file di base 64 (o qualsiasi file per questo) è collegato a una e-mail. Un sito web può ora offrire la possibilità di inviare una foto ai vostri amici via e-mail. Basta riceve l'immagine che rappresenta la base 64 e poi scrive una e-mail con la base dati 64 inclusi.

Come caricare dati immagine base64 su HTML5 canvas

Ora vuole anche fare l'opposto: se si dispone di una rappresentazione base64 di un'immagine, come si può caricare i dati delle immagini ad Base64 una tela HTML5? Questo non è difficile perché siamo in grado di creare una singola immagine, assegnare dati di immagine, e quindi disegnare l'immagine. Ecco il codice JavaScript di fare proprio questo:

myImage var = new Image (); myImage.src = imgData; ctx.drawImage (myImage, 0, 0);

La variabile imgData contiene la base 64 dei dati di immagine. Se la tela era vuota, ora tornare la nostra immagine sulla tela. Dopo di che è possibile utilizzare toDataURL () per rappresentare base64 dati.

Conclusione

In questo tutorial abbiamo visto come per scattare la foto mostrata su una tela HTML5, come trasformarlo in una stringa di base 64 e come fare il contrario: abbiamo visto come caricare un'immagine in un HTML5 canvas di base 64. Cosa stai facendo con quelle stringhe base64 è interamente a voi!

Buona fortuna con i vostri progetti di sviluppo web e felice codifica!

Questo articolo è stato scritto da Simeon Visser. Sto vincendo soldi online troppo? Leggi le storie di successo e iscriviti oggi per iniziare!

(0)
(0)

Commenti - 0

Non ci sono commenti

Aggiungi un commento

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caratteri rimanenti: 3000
captcha