Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Come colorare un pixel

  1. #1

    Come colorare un pixel

    Salve a tutti,

    avrei l'esigenza di far colorare all'utente i singoli pixel di una pagina per ottenere delle sfumature particolari, qualcuno sa come potrei realizzare la cosa? A parte che non saprei proprio come colorare un singolo pixel , in più dovrei memorizzare una quantità industriale di dati se non sbaglio, perchè posto che sullo schermo ci sono che ne so 1 milione di pixel, devo memorizzare tutti i singoli punti e le tonalità associate dall'utente.

    Sto parlando di fantascienza vero? Oppure è fattibile con l'ausilio di qualche cosa tipo JS o CSS? (immagino che per memorizzare i dati serva MySQL però chissà cosa succede se devo memorizzare un milione di scelte :S)

    Grazie a chiunque si porrà questo assurdo quesito :P e mi darà una risposta (mi va bene anche "è una follia!" :quote: )

    Ciao!!
    Diablo

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Fattibile usando js e gd library o più semplicemente con Flash.

    Dai un occhio a questi per il JS:

    http://qpaintbrush.50webs.com/
    http://www.hjsv.com/games/js-paint/js-painter.html
    http://canvaspaint.org/

    Questo x Flash (molto meglio)
    http://www.flashpaint.com/

  3. #3
    Originariamente inviato da nICO80
    Fattibile usando js e gd library o più semplicemente con Flash.

    Dai un occhio a questi per il JS:

    http://qpaintbrush.50webs.com/
    http://www.hjsv.com/games/js-paint/js-painter.html
    http://canvaspaint.org/

    Questo x Flash (molto meglio)
    http://www.flashpaint.com/
    oddio mio sei un santo più o meno è quello che stavo cercando. Solo che non ho idea di come implementare quello che mi hai proposto (di flash purtroppo non so nulla, anche se c'avevo già pensato potesse essere la soluzione migliore come dici tu ).
    Per quanto riguarda JS a me servirebbe una pagina in cui l'utente sceglie il colore del singolo pixel e dopodichè salvare il suo lavoro e renderlo disponibile e visualizzabile al resto degli utenti. (non si tratta proprio di disegnare, ma semplicemente di scegliere la tonalità del singolo pixel ovviamente poi esce fuori un disegno ).
    Però mi chiedevo come faccio a salvare il lavoro e renderlo disponibile a tutti? O meglio con JS io ogni volta che coloro un pixel modifico la struttura della pagina oppure salvo i colori dati ai singoli pixel in un database?

    Te lo chiedo perchè se dovessi salvare i dati relativi ai pixel in un database per ogni lavoro di un utente dovrei avere più o meno un milione di records (giusto *bay ne ha così tante!! ).

    Spero di essermi spiegato, comunque grazie mi hai già abbastanza illuminato e te ne sono grato
    Diablo

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Guarda, non mi sono mai messo a fare una cosa del genere... ma immagino che potresti fare una chiamata AJAX ad una pagina PHP a cui posti i valori dei pixel e questa pagina usa le GD libraries per creare un file jpg/bmp/png che salvi sul server.

    Ora devo uscire, magari quando torno provo a fare qualche test


  5. #5
    Originariamente inviato da nICO80
    Guarda, non mi sono mai messo a fare una cosa del genere... ma immagino che potresti fare una chiamata AJAX ad una pagina PHP a cui posti i valori dei pixel e questa pagina usa le GD libraries per creare un file jpg/bmp/png che salvi sul server.

    Ora devo uscire, magari quando torno provo a fare qualche test

    VVoVe: mappete un genio . Non so guarda ti capisco benissimo se non trovi tempo per provare tu stesso, non ti preoccupare. Il problema è che io sono abbastanza bravo solo con PHP e MySQL, del resto proprio zero carbonella . Comunque se mi dici in soldoni come funziona una chiamata AJAX e come mi risolverebbe il problema salvando di volta in volta la pagina (non crea di volta in volta una pagina diversa vero? Sennò poi avrei un milione di pagine :P) provo a documentarmi da solo, qualora non ci riuscissi torno qua tanto .

    Grazie comunque per la mano, apprezzo tantissimo che perdi tempo per una questione un po' assurda
    Diablo

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Guarda non ti preoccupare. Sono a casa a far niente... questa è una cosa divertente. (ok, mi diverto con poco!)

    Comunque ho fatto una piccola prova in realtà senza andare a scomodare AJAX. Ti crea solamente un'immagine 20x20.

    Puoi vedere il tutto in opera qui:

    http://www.nicolaromano.net/misc/colors/colorme.php

    Il sorgente è qui:

    http://www.nicolaromano.net/misc/colors/colors.zip

    In pratica hai un quadratone 400x400 con all'interno tanti quadratini bianchi (sono immagini) 40 x 40

    Quindi è come avere un'immagine 10x10 pixel bianchi
    Quando clicchi su una di queste immagini il src dell'elemento viene cambiato con un'immagine del colore scelto.

    Quando schiacci salva viene creata un'immagine tramite un file php (via GD libraries) che salva la jpg sul server (nella sottocartella out). Ti fa vedere il file salvato sotto il quadratone.
    Uso imagesetpixel per colorare il singolo pixel. Coloro dei quadratini 2x2 in modo da avere un'immagine 20x20 e non 10x10 (minuscola)

    Quindi ti ritrovi una jpg per ogni salvataggio.

    Ovviamente il tutto è ottimizzabile... si potrebbe mettere il nome della jpg in un db etc. ma questo lo lascio a te!
    Inoltre se vuoi fare immagini più grandi di 20x20 questo approccio non è probabilmente il migliore visto che passo i pixels via get, dovresti pensare a qualcosa di diverso.

    buon divertimento!
    nico

  7. #7
    Originariamente inviato da nICO80
    Guarda non ti preoccupare. Sono a casa a far niente... questa è una cosa divertente. (ok, mi diverto con poco!)

    Ovviamente il tutto è ottimizzabile... si potrebbe mettere il nome della jpg in un db etc. ma questo lo lascio a te!
    Inoltre se vuoi fare immagini più grandi di 20x20 questo approccio non è probabilmente il migliore visto che passo i pixels via get, dovresti pensare a qualcosa di diverso.

    buon divertimento!
    nico
    oddio assolutamente STREPITOSO VVoVe: VVoVe: . Fai veramente paura!!! E' proprio quello che cercavo, io non ho parole non so come ringraziarti , troppo gentile che c'hai perso tempo grazie veramente. Ora mi studio per benino il codice se trovo qualche problema (ma non penso sei stato chiarissimo) vengo a rompere qua.

    Grazie ancora,

    Luca

    p.s: spero che un giorno sarò abbastanza bravo da ricompensare :P
    Diablo

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Di niente.
    Buon anno!


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.