Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Farbdeckung ausgeben lassen (https://www.delphipraxis.net/57987-farbdeckung-ausgeben-lassen.html)

Venator 29. Nov 2005 17:42


Farbdeckung ausgeben lassen
 
Hi @ all,

ich würde gerne das Programm auslesen lassen, wieviel % einer in TImage
geladende Grafik mit Farbe (also Farbe + Schwarz) bedeckt sind und
wieviel % weiss sind. Die Ausgabe sollte in zwei Labels in % erfolgen.

Hat dabei jemand von euch eine Idee?

Danke schonmal im vorraus, V..

Aenogym 29. Nov 2005 17:44

Re: Farbdeckung ausgeben lassen
 
hi V,

also du hast ja die höhe und breite deines bildes. beides multipliziert ergibt die anzahl der gesamten pixel (ist klar, denke ich).
jetzt könntest du mithilfe zweier for-schleifen durch das bitmap iterieren (siehe Delphi-Referenz durchsuchenTCanvas.Pixels) und zählen, wie viele pixel weiß sind.
davon dann die prozente zu errechnen sollte kein problem mehr darstellen ;)

aenogym

Venator 29. Nov 2005 17:55

Re: Farbdeckung ausgeben lassen
 
Na ja, soweit ist das System klar, aber als Delphi
wiederanfänger bin ich damit nen stückweit derzeit
überfordert.

Delphi-Quellcode:
procedure TDeckungsgradberechner.Grafikoeffnen1Click(Sender: TObject);
var OD: TOpenDialog;
begin
OD := TOpenDialog.Create(Self);
  with OD do
   begin
    OD.Title := 'Datei auswählen...';
    OD.Filter := 'Jpeg-Dateien (*.jpg)|*.jpg|Bitmaps (*.bmp)|*.bmp'; // Dateityp-Festlegung
    OD.InitialDir := GetCurrentDir; // Öffnen-Pfad = Aktuelles Verzeichnis
    if OD.Execute then // Wenn geöffnet, dann ...
     Grafikplatz.Picture.LoadFromFile(Filename); // Bild wird in Grafikplatz geladen
   end;
  OD.Free; // Dialog wieder aus Speicher entfernen
end;

end.

Khabarakh 29. Nov 2005 18:00

Re: Farbdeckung ausgeben lassen
 
Und jetzt sollen wir dir den Rest tippen :stupid: ? Wenn du überfordert bist, solltest du dich erstmal einem anderen Projekt widmen.

shmia 29. Nov 2005 18:35

Re: Farbdeckung ausgeben lassen
 
Viel schlauer wäre doch ein Diagramm mit der Farbhäufigkeit.
http://www.efg2.com/Lab/Graphics/Colors/ShowImage.htm
Interessant ist auch:
http://www.efg2.com/Lab/Graphics/Colors/ColorRange.htm


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:51 Uhr.

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