AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Farbe von Bildschirminhalt ermitteln ?
Thema durchsuchen
Ansicht
Themen-Optionen

Farbe von Bildschirminhalt ermitteln ?

Ein Thema von Blamaster · begonnen am 2. Jul 2009 · letzter Beitrag vom 19. Jul 2009
 
Blamaster

Registriert seit: 20. Jul 2007
230 Beiträge
 
#33

Re: Farbe von Bildschirminhalt ermitteln ?

  Alt 19. Jul 2009, 14:26
So,

nach einigem geteste möchte ich nun noch eine Zusatzfunktion verbauen.

Momentan Scanne ich ja die Pixel wie folgt:

Delphi-Quellcode:
for y := 0 to Screenshot.Height - 1 do
  begin
    for x := 0 to Screenshot.Width - 1 do
    begin
      Color := WinColor(Screenshot.Pixel[x, y]);
      ColorArray_r[pixelcount] := GetRValue(Color);
      ColorArray_g[pixelcount] := GetGValue(Color);
      ColorArray_b[pixelcount] := GetBValue(Color);
      inc(pixelcount);
    end;
  end;
Problem ist nun das wenn der Screenshot beispielsweise 150 x 150 px groß ist 22500 Pixel "gescannt" werden und das ist etwas zu viel.

Deswegen wollte ich nun folgendes vorgeben. 1. Größe des Screenshots 2. Anzahl der zu "scannenden" Pixel, diese sollen dann gleichmäßig über den Screenshot verteilt werden.

Nun habe ich dabei aber ein gewaltiges Schleifenproblem.
Wie kann ich eine Schleife erstellen die die eine variable Anzahl an punkten gleichmäßig in einem in der größe variablen Quadrat scannt ?

Um überhaupt erstmal weniger pixel zu scannen hatte ich folgedes versucht:

Delphi-Quellcode:
  while y <= Screenshot.Height - 1 do
  begin
    y := y + 5;
    for x := 0 to Screenshot.Width - 1 do
    begin
      inc(pixelcount);
      Color := WinColor(Screenshot.Pixel[x, y]);

      ColorArray_r[pixelcount] := GetRValue(Color);
      ColorArray_g[pixelcount] := GetGValue(Color);
      ColorArray_b[pixelcount] := GetBValue(Color);
    end;
  end;
So wollte ich jetzt nur jede 5. Reihe der y Achse scannen was allerings zu einem Exception Error führt.

Ich hoffe jemand kann behilflich sein

mfg Yannic
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:08 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 by Thomas Breitkreuz