Casa Social media Come manipolare i pixel con il tag HTML5 Canvas - dummies

Come manipolare i pixel con il tag HTML5 Canvas - dummies

Video: Corso HTML5 ITA - 21 CANVAS: manipolare una immagine a livello di pixel 2024

Video: Corso HTML5 ITA - 21 CANVAS: manipolare una immagine a livello di pixel 2024
Anonim

Con HTML5, puoi estrarre i dati di un tag canvas nei dati dei pixel sottostanti. La manipolazione di questi dati ti offre un controllo completo dell'immagine in tempo reale. È possibile utilizzare questi dati per il bilanciamento del colore e per sperimentare con le proprie sfocature, nitidezza e effetti cromatici.

Indipendentemente dal formato in cui è memorizzata un'immagine nel file system, viene visualizzato come un elenco di pixel. Ogni pixel è rappresentato (nel sistema standard a 32 bit, comunque) da quattro numeri interi: RGBA. La R rappresenta quanto rosso è nel punto corrente, G sta per verde e B sta per blu. La A sta per alfa, che è una misura della trasparenza dell'immagine. Ognuno di questi valori può variare da 0 a 255. Quando converti un'immagine nel formato dei dati dell'immagine, ottieni una vasta gamma di numeri interi. Ogni gruppo di quattro immagini rappresenta un singolo pixel di dati a colori.

Questo codice cambia il bilanciamento del colore di un'immagine:

funzione draw () {var drawing = document. getElementById ("elaborazione"); var con = disegno. getContext ("2d"); var original = document. getElementById ("originale"); CANV_WIDTH = 200; CANV_HEIGHT = 200; // disegna l'originale sul canvas. drawImage (originale, 0, 0); // recupera i dati dell'immagine imgData = con. getImageData (0, 0, 200, 200); // loop through image data for (row = 0; row  255) {r = 255;} if (r 255) {g = 255;} if (g 255) {r = 255;} if (b <0) {b = 0;} if (a> 255) {a = 255;} if (a <0) {a = 0;} // restituisce nuovi valori ai dati imgData. data [indice] = r; imgData. data [indice + 1] = g; imgData. data [indice + 2] = b; imgData. data [index + 3] = a;} // end col per loop} // end row per loop // disegna nuova immagine su canvas con. putImageData (imgData, 0, 0);} // end function

Anche se l'elenco di codici sembra abbastanza lungo, non è molto difficile da seguire:

  1. Disegna un'immagine originale.

    La tecnica che utilizzerai estrae i dati da un elemento canvas, quindi per modificare un'immagine, devi prima disegnarla su una tela. Puoi usare il normale metodo drawImage ().

  2. Estrai i dati dell'immagine.

    Il metodo getImageData () ottiene l'immagine visualizzata dalla tela corrente e la colloca in una vasta serie di numeri interi.

  3. Crea un loop per gestire le righe.

    I dati dell'immagine sono suddivisi in righe e colonne. Ogni riga va da 0 all'altezza della tela, quindi fai un ciclo for per scorrere le righe.

  4. Crea un altro ciclo per gestire le colonne.

    All'interno di ogni riga ci sono dati sufficienti per passare da 0 alla larghezza della tela, quindi creare un secondo ciclo per il primo.È molto comune utilizzare una coppia di cicli nidificati per scorrere dati bidimensionali come le informazioni sull'immagine.

  5. Trova l'indice in imageData per la riga e la colonna corrente.

    L'array imageData contiene quattro numeri interi per ogni pixel, quindi dobbiamo fare un po 'di matematica per capire dove si trova il primo numero intero per ogni pixel. La formula più semplice consiste nel moltiplicare il numero di righe per la larghezza della tela, aggiungerlo al numero della colonna e moltiplicare l'intero risultato per quattro.

  6. Tirare i valori dei colori corrispondenti dall'indice.

    L'indice rappresenta anche il valore rosso del pixel corrente. L'int successivo contiene il valore verde, seguito dal valore blu e infine dal valore alfa.

  7. Manipola i valori del colore come vuoi.

    Se stai per fare un'app per il bilanciamento del colore, puoi semplicemente aggiungere o sottrarre valori per cambiare il bilanciamento del colore generale. Puoi anche fare un lavoro molto più elaborato se vuoi giocare con la manipolazione delle immagini a livello di pixel.

  8. Controlla i confini.

    Un valore di pixel non può essere inferiore a 0 o superiore a 255, quindi controllare entrambi i limiti e regolare tutti i valori di pixel entro i limiti di legge.

  9. Restituisce i valori manipolati all'array imgData.

    È possibile copiare nuovamente i valori nell'array e fare ciò per rendere visibili le modifiche.

  10. Disegna i dati dell'immagine sulla tela.

    La funzione putImageData () disegna i dati dell'immagine corrente sul canvas come un'immagine ordinaria. La nuova versione dell'immagine rifletterà i cambiamenti.

Come manipolare i pixel con il tag HTML5 Canvas - dummies

Scelta dell'editore

Esame di matematica tASC: utilizzo di funzioni esponenziali - dummies

Esame di matematica tASC: utilizzo di funzioni esponenziali - dummies

Probabilmente incontrerete domande sul TASC Math esame che coinvolge funzioni esponenziali. Se i problemi si presentano sotto forma di grafico o tabella, le seguenti istruzioni ti aiuteranno a navigare attraverso di essi. Una funzione esponenziale è quando la variabile indipendente è nell'esponente di una costante. La base del ...

TASC Sistemi di risoluzione matematica delle equazioni mediante sostituzione ed eliminazione - manichini

TASC Sistemi di risoluzione matematica delle equazioni mediante sostituzione ed eliminazione - manichini

Se si esegue attraverso un problema con il sistema di equazioni sull'esame TASC Math, due modi per risolverlo, se si decide di evitare la grafica, sono attraverso la sostituzione e l'eliminazione. Utilizzo del metodo di sostituzione Per risolvere un sistema di due variabili utilizzando il metodo di sostituzione, attenersi alla seguente procedura: Risolvere una o entrambe le equazioni per uno dei ...

Test di lettura tASC - analisi di parole e frasi - dummies

Test di lettura tASC - analisi di parole e frasi - dummies

Quando si conoscono le parole e le frasi nel testo, comprendere le intenzioni dell'autore è più facile. Dovresti cercare degli indizi nei passaggi di TASC Reading per determinare il significato che l'autore sta cercando di trasmettere. Quando non sei sicuro del significato che un autore sta cercando di trasmettere perché non sei sicuro di ...

Scelta dell'editore

Come manipolare i pixel con il tag HTML5 Canvas - dummies

Come manipolare i pixel con il tag HTML5 Canvas - dummies

Con HTML5, è possibile estrai i dati di un tag canvas nei dati dei pixel sottostanti. La manipolazione di questi dati ti offre un controllo completo dell'immagine in tempo reale. È possibile utilizzare questi dati per il bilanciamento del colore e per sperimentare con le proprie sfocature, nitidezza e effetti cromatici. Indipendentemente dal formato in ...

Come ottenere il ColorZilla Plugin per CSS3 - dummies

Come ottenere il ColorZilla Plugin per CSS3 - dummies

Per utilizzare la maggior parte delle funzionalità di ColorZilla con CSS3, devi installare il plugin. (The Ultimate Gradient Generator non richiede il plug-in.) I plugin descritti qui sono la versione 2. 8 per Firefox e la versione 0. 5 per Chrome. Se si utilizza una versione più recente o diversa del plug-in (ad esempio, per un altro browser), è possibile visualizzare alcuni ...

Come ottimizzare le immagini per il tuo sito Web - dummies

Come ottimizzare le immagini per il tuo sito Web - dummies

Non importa quanto sia bello il contenuto le tue pagine Web, le immagini attraggono maggiormente l'attenzione. I tasti per ottimizzare le immagini in modo che si scarichino rapidamente dalle tue pagine Web sono Ritagliare e ridimensionare le immagini per visualizzare bene lo schermo di un computer Scegliere il formato migliore: GIF o PNG per disegni al tratto e immagini con colori limitati, ...

Scelta dell'editore

Come utilizzare il microfono incorporato della fotocamera per la produzione di film digitale - manichini

Come utilizzare il microfono incorporato della fotocamera per la produzione di film digitale - manichini

Quasi tutti le videocamere digitali ora dispongono di microfoni incorporati chiamati microfoni di bordo. Sulle ultime fotocamere, i microfoni di bordo sono migliori di quelli che erano, ma non sono ancora la soluzione migliore per registrare audio o dialoghi in film. Tuttavia, al momento un microfono di bordo potrebbe essere la tua unica soluzione, quindi è bene sapere ...

Come visualizzare i tuoi file video capovolti tramite Windows Live Gallery - dummies

Come visualizzare i tuoi file video capovolti tramite Windows Live Gallery - dummies

Quando si tratta di trasferendo i file dalla tua fotocamera Flip al tuo computer, hai diverse opzioni. Quello che usi dipenderà dal tipo di sistema operativo che utilizzi (Windows o Mac) e da ciò che accade quando colleghi Flip al tuo computer. Windows Live Photo Gallery fa parte di ...

Come guardare i video flip sulla TV - dummy

Come guardare i video flip sulla TV - dummy

Se la tua fotocamera Flip viene fornita con un cavo video, puoi usare quel cavo per collegare la tua fotocamera alla tua TV. Se il tuo Flip non viene fornito con un cavo video, potresti già possedere il cavo video giusto oppure puoi acquistare il cavo video online o dal rivenditore locale di prodotti elettronici di consumo. Il tipo ...