Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Delphi - catturare una porzione di immagine
Forum - Delphi - catturare una porzione di immagine

Avatar
Darietto (Normal User)
Rookie


Messaggi: 32
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 16:49
Domenica, 28/12/2008
Salve...

Ho un piccolo problema...

ho inseriro in un Timage un immagine jpeg...

vorrei sapere come fare per poter catturare un porzione di immagine e spostarla in un altra TImage...

grazie

PM Quote
Avatar
gigisoft (Member)
Guru


Messaggi: 696
Iscritto: 11/10/2008

Segnala al moderatore
Postato alle 0:59
Sabato, 03/01/2009
Salve,
daun TImage a un'altro non so, ma se non ricordo male esiste un modo per copiare una porzione di un TCanvas in un altro TCanvas, vedi sulla documentazione.
Ciao.

Luigi

PM Quote
Avatar
Darietto (Normal User)
Rookie


Messaggi: 32
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 2:42
Sabato, 03/01/2009
Testo quotato

Postato originariamente da gigisoft:

Salve,
daun TImage a un'altro non so, ma se non ricordo male esiste un modo per copiare una porzione di un TCanvas in un altro TCanvas, vedi sulla documentazione.
Ciao.

Luigi



ok grazie per l'aiuto..

PM Quote
Avatar
inuyasca (Ex-Member)
Newbie


Messaggi: 20
Iscritto: 09/03/2008

Segnala al moderatore
Postato alle 18:36
Domenica, 04/01/2009
Guarda non so se esiste una funzione per catturare un poarte dell'imagine ma io per rilevare il colore di un singolo pixel ho usato questo:
Form1.Caption := ColorToString(Image1.Canvas.Pixels[X,Y]);

  {Per ottenere il numero del colore usavo questa}

  Form1.Caption := Caption + ' - ' + IntToStr(ColorToRGB(Image1.Canvas.Pixels[X,Y]));
dove x e y sono le coordinate quindi puoi sempre catturare i pixel per un determinato numero orizontalmente X per un determinato numero di volte modificando Y e riprintarlo in un'altra imagine :=)) con questa istruzione
form1.Image1.Canvas.Pixels[10,43]:=clred;
be io almeno ho fatto cosi pero io prima la ingrandivo l'immagine per aumentare il numero e il dettaglio be spero ti aiuti sta cosa ;)

PM Quote
Avatar
Darietto (Normal User)
Rookie


Messaggi: 32
Iscritto: 07/09/2008

Segnala al moderatore
Postato alle 0:26
Lunedė, 05/01/2009
si ho risolto utilizzando la proprieta' canvas e il metodo copyrect...

es:
Codice sorgente - presumibilmente Delphi

  1. begin
  2. Image2.Canvas.CopyRect(Bounds(0,0,100,100),Image1.Canvas,Bounds(0,0,100,100));
  3. end;


Ultima modifica effettuata da Darietto il 05/01/2009 alle 0:27
PM Quote
Avatar
inuyasca (Ex-Member)
Newbie


Messaggi: 20
Iscritto: 09/03/2008

Segnala al moderatore
Postato alle 10:29
Lunedė, 05/01/2009
Questa non la sapevo questa istruzione mo me la annoto potrebbe venirmi utile ciao

PM Quote