Delphi-Quellcode:
Picture.Bitmap.PixelFormat := pf...;
Picture.Bitmap.SaveToFile(...);
Achtung: Geht natürlich nur, wenn ein Picture.Bitmap.SaveToFile geht natürlich nur, wenn auch ein Bitmap in Picture enthalten ist.
Und da das PixelFormat auf das Original angewendet wird, wird bei zu geringer Farbtiefe auch das Originalbild verändert ... in soeinem Fall ist ein temporäres Bitmap natürlich besser.
Alternativ ein temporäres TPicture, diesem ein temporäres TBitmap zuweisen, Pixelformat anpassen, das andere Bild reinkopieren und am Ende TempPicture.SaveToFile,
falls nicht nur als Bitmap gespeichert werden soll.
PS: Picture.SaveToFile nutzt die Dateiendung, um den Typ der zu speichernden Datei zu bestimmen (ebenso wie LoadFromFile nur über die Dateiendung geht und dann natürlich bei einer unpassenden Endung fehl schlägt
)