AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Schwarzer Bereich aus Bitmap entfernen
Thema durchsuchen
Ansicht
Themen-Optionen

Schwarzer Bereich aus Bitmap entfernen

Ein Thema von dinosaur · begonnen am 14. Dez 2004 · letzter Beitrag vom 16. Dez 2004
Antwort Antwort
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#1

Re: Schwarzer Bereich aus Bitmap entfernen

  Alt 14. Dez 2004, 22:39
Du möchtest das Bild automatisch verkleinern ?

dann kannst du etwa so vorgehen:


Delphi-Quellcode:
pPixelLine := Bmp.ScanLine [0];
BackColor := pPixelLine^.[0];

// oberste BMP Zeile suchen die nicht einfarbig ist:
Top := -1;
for Y := 0 to Bmp.Height do
begin
  pPixelLine = Bmp.ScanLine [y];
  for x := 0 to bmp.Width do
  begin
    if BakcColor <> pPixelLine^.[0] then
    begin
       Top := y;
       break;
    end;
    if Top >= 0 then begin
      break;
    end;
  end;
end;
dann suchst du noch
von unten nach oben,
von rechts nach links und
von links nach rechts
um alle vier Kanten
deines neuen Rechtecks zu ermitteln.

dann noch ausschneiden -> fertig

die Typen von
BackColor und pPixelLine
sind davon abhängig in welchem Format deine Bmp daherkommt.

das kann man mit bmp.PixelFormat abfragen


DerDan
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:56 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