Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi RGB Farben aus Image (https://www.delphipraxis.net/16937-rgb-farben-aus-image.html)

delphi_newbie_123 25. Feb 2004 20:59


RGB Farben aus Image
 
hallo leute!
ich will ein programm schreiben, das alle RGB Farben einer IMG in einem Memo mit semicolum getrennt auflistet. nun wiess ich leider nicht wie ich das anstellen soll :/.
ich weiss nur wie man bestimmte pixelfaben auf dem bildschirm erkennt aber nicht wie alle farben
der geladenen image aufgelistet werden solen.
wär uber einen tipp sehr erfreut ;)
danke :D

Mirilin 25. Feb 2004 21:03

Re: RGB Farben aus Image
 
:hi:

Du könntest alle Pixel durchgehen, und falls die Farbe des Pixels noch nicht vorgekommen ist, diese hinzufügen.

mfg Tobias

delphi_newbie_123 25. Feb 2004 21:24

Re: RGB Farben aus Image
 
Delphi-Quellcode:
var i1,i2 : integer;
begin listbox1.Clear;
for i1 := Y to Y+10 do for i2 := X to X+10 do
 ListBox1.Items.Add(colortostring(image1.Canvas.Pixels[i2,i1]));

end;
so ca?
und wie gleiche farben entfernen ?

Mirilin 25. Feb 2004 21:40

Re: RGB Farben aus Image
 
:hi:

Schau Dir mal ListBox.Items.IndexOf(string) an.

mfg Tobias

delphi_newbie_123 25. Feb 2004 22:14

Re: RGB Farben aus Image
 
ah danke bin aber noob :(
nix wissen von index string :D
gehts vielleicht ein klitsekleinesbisschen genauer :P
danke fuer hilfe ;)

Robert_G 25. Feb 2004 23:05

Re: RGB Farben aus Image
 
Was Mirilin dir mit dem Hinweis sagen wollte ist:
  • Items ist vom Typ TStrings
  • TStrings hat eine Funktion namens "IndexOf"
  • Dieser Funktion gibst du einen String und wenn er in der StringList (hier "Items") vorkommt, bekommst du als Rückgabewert seine Position.
  • Gibt es den String nicht in der Liste bekommst du -1.
StringList:
abc
def
ghi

StringList.IndexOf('abc') ergibt 0
StringList.IndexOf('def') ergibt 1
StringList.IndexOf('ghi') ergibt 2
StringList.IndexOf('jkl') ergibt -1

Wenn du jetzt mit dem IndexOf deiner Listbox die Farbwerte prüfst, kannst du den String ignorieren wenn IndexOf <> -1 ist.

p.s.: Ich habe diesmal absichtlich kein Codebeispiel gepostet. Anhand der Infos und einer Suche in der OH nach "IndexOf" solltest du dich dann auch besser mit Memos , ComboBoxen, ... auskennen (TStrings wird oft benutzt)

delphi_newbie_123 26. Feb 2004 08:56

Re: RGB Farben aus Image
 
ah danke ;)
hilft mir weiter :angle:


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:10 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz