![]() |
Bitmap speichern - inkompatibel ?
Liste der Anhänge anzeigen (Anzahl: 1)
Selten aber nun muss ich doch mal was fragen...
Ich bin im Begriff ein kleines Tool zu schreiben, welches eine BMP in bestimmter Auflösung in lauter einzelne BMP's mit 128 x 128 Pixeln zerlegt und diese einzeln abspeichert. (Das sollen mal Texturen für ein Gamelevel werden) Das funktioniert eigentlich auch schon sehr gut aber da gibts nen kleines Problem welches mir Kopfzerbrechen bereitet: Die Bitmaps werden sehrwohl einzeln abgespeichert jedoch kann ich diese mit jeglicher Bildbearbeitungssoftware nicht öffnen. Fehlermeldung "Unbekanntes Dateiformat". Interessanterweise kann ich diese mit dem eingebauten Windows-Bildbetrachter öffnen und sehen. Irgendwie komisch. Hat da vllt jemand eine Idee was ich da wohl falschgemacht habe ? Ich hänge das gesamte Projekt mal an. Danke schonmal im voraus und ich bin gespannt wie ein Regnschirm, wo wohl mein Denkfehler ist. (Und sorry für das böse Hardcoding.. es war ursprünglich auch nur als Test und "Einwegtool" gedacht :-) ) |
Re: Bitmap speichern - inkompatibel ?
Wieso benutzt Du nicht einfach CopyRect? Außerdem zeichnest Du auf den Canvas des Image, nicht auf den der Bitmap.
[edit] Schau mal, ob Du hiermit etwas anfangen kannst:
Delphi-Quellcode:
[/edit]
function SaveImagePart(const src: TBitmap; //Quellbitmap
const x,y, //Startpunkt iWidth, //Höhe und Breite iHeight: Integer; sName: TFileName; //Dateiname zum Speichern PixelFormat: TPixelFormat = pf24Bit): Boolean; var memBmp: TBitmap; begin Result := False; sName := ChangeFileExt(sName,'.bmp'); memBmp := TBitmap.Create; try memBmp.Width := iWidth; memBmp.Height := iHeight; memBmp.PixelFormat := PixelFormat; BitBlt(memBmp.Canvas.Handle, 0, 0, iWidth, iHeight, src.Canvas.Handle, x, y, SRCCOPY); memBmp.SaveToFile(sName); Result := True; finally memBmp.Free; end; end; |
Re: Bitmap speichern - inkompatibel ?
Zitat:
Aber Deine 2. Aussage ist für mich sehr interessant ! - Warum bietet mir das Delphi sowas wie:
Delphi-Quellcode:
an ?
form1.Image2.Picture.Bitmap.SaveToFile
Und dabei wundere ich mich immernoch warum der Windows-Bildbetrachter die einzelnen Bmp's korrekt anzeigt und diese von dort aus in einem brauchbaren *.BMP abzuspeichern vermag. Ich glaube ich muss das Programm noch mal von Grund auf neu überdenken. (war eh nur so'n Schnellschuss) :-) Aber Danke schonmal... |
Re: Bitmap speichern - inkompatibel ?
Zitat:
[edit] Vertipper korrigiert [/edit] |
Re: Bitmap speichern - inkompatibel ?
Ok, Prolem gelöst.
Danke nochmals... Oft genügt der richtige Tip in die richtige Richtung :-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 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