AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Library: Grafik / Sound / Multimedia Delphi Farbtiefenänderung eines Bitmaps
Thema durchsuchen
Ansicht
Themen-Optionen

Farbtiefenänderung eines Bitmaps

Ein Thema von flomei · begonnen am 27. Apr 2004
Antwort Antwort
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#1

Farbtiefenänderung eines Bitmaps

  Alt 27. Apr 2004, 22:28
Wenn man die Dateigröße von Bitmaps verringern möchte ändert man am einfachsten die Farbtiefe! Das bringt meistens eine enorme Verkleinerung der Dateigröße und die Bilder sehen trotzdem noch (je nach Änderung) gut aus...

Delphi-Quellcode:
//datentypen:
// BitmapXXbit = Bitmap mit 24, 32 usw. Bit
// Bitmap8Bit = Bitmap mit 256 Farben
// JPG = TJPegImage (uses jpeg!!) als utility
// Reduzieren der Bitmap Qualität mit dem Palette Optimizing von JPEG
function BMPReduceTo8Bit(BitmapXXBit: TBitmap): TBitmap;
vAR
  JPG: TJPegImage;
  Bitmap8bit: TBitmap;
begin
  if BitmapXXBit <> nil then
  begin
    JPG := TJpegImage.Create;
    JPG.CompressionQuality := 100; // <--damit die bitmap nicht komprimiert wird
    JPG.Assign(BitmapXXBit); //<- BitmapXXBit -> JPG

    JPG.JPEGNeeded; // <-- verwandle in JPEG!
    JPG.PixelFormat := jf8bit; // 8 bit reduzierung
    JPG.DibNeeded; // palette wird neu geschrieben, wieder bitmap fähig

    bitmap8bit:=TBitmap.Create;
    bitmap8bit.PixelFormat := pf8bit;
    bitmap8bit.Assign(JPG); // JPG (8bit, opt.palette) -> BMP (8bit)
    // bitmap8bit.SaveToFile('whatever.bmp'); <-speichern

    JPG.Free;
 
    Result:=Bitmap8Bit;
  end; // if %Bmp ned nil
end; // Proc %bmp8bit
Klick! cyborg

Zitat zu dem Thema: (Hier gefunden - Knapp unter Mitte der Seite)
Zitat:
Dateigröße reduzieren

Nachdem bei Pixel-Grafiken jeder einzelne Bildpunkt definiert wird, hängt die Dateigröße von folgenden Faktorn ab:
  • Von der Anzahl der Bildpunkte. So gibt es Digitalkameras die 1.3, 2, 3, 4 oder auch mehr Mio. Pixel bei einem Foto abspeichern.
  • Von der verwendeten Farbtiefe = Farbenanzahl und deren Zusatzeigenschaften. Je mehr Farben verwendet werden, um so größer wird die Datei.
  • Vom verwendeten Bildformat und deren Komprimierugsmöglichkeiten. JPG für Fotos, GIF für kleinere Bilder und Grafiken mit sehr wenig Farben.

Farbanzahl reduzieren
Bei manchen Grafiken können Sie fast ohne Qualitätsverlust die Dateigröße erheblich verringern, indem Sie die Anzahl der Farben heruntersetzen. Bei einem Foto genügen häufig 256 Farben bei einer Strichgrafik kann man mitunter mit noch viel weniger Farben auskommen. Allerdings gibt es dabei keine immer gültigen Regeln, man muss probieren.
Besonders bei GIF-Dateien verkleinert sich die Dateigröße stark, wenn die Farbenanzahl gesenkt wird.
HTH!

MfG Florian

[edit=Chakotay1308]Besser? Mfg, Chakotay1308[/edit]

[edit=flomei]Viel besser... ===> In Code-Lib verschoben...[/edit]
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
[edit=flomei]Wir "räumen auf", daher Titel geändert... Mfg, flomei[/edit]
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  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 11:57 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