Autor Beitrag
FatalError
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64

WIN ME
D6 Pers
BeitragVerfasst: So 07.11.04 13:42 
Hi!

In einem kleinen Screenshotprogramm habe ich folgende Prozedur die den screenshot aus einem Image in eine Bitmap-Datei speichert:

ausblenden Delphi-Quelltext
1:
image1.Picture.SaveToFile('screen1.bmp');					


Wenn ich die so gespeicherte Datei mit "Microsoft Photo Editor" oder "Picture It" öffnen will, um sie weiter zu verwenden, kommt immer die Fehlermeldung:

Zitat:
Datei kann nicht geöffnet werden


Der Fehler kommt auch, wenn ich stattdessen eine .jpg-Datei benutze! Woran liegt das? Mit Delphi lässt sich das erstellete Bild problemlos laden, ebenfalls mit der Windows Bildvorschau! :?: Scheints ist das Problem noch nicht aufgetaucht, oder hab ich nur nach den falschen Begriffen gesucht?

Grüße
Andy
.Chef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112



BeitragVerfasst: So 07.11.04 14:08 
Das kommt daher, dass manche Bildbearbeitungsprogramme nicht mit dem 32-Bit-BMP-Format nicht zurechtkommen (z.B. auch Photoshop 6). Abhilfe schafft:
ausblenden Delphi-Quelltext
1:
Image1.Picture.Bitmap.PixelFormat:=pf24bit;					

Dass es mit JPG auch nicht funktioniert, wird daran liegen, dass eine normale Imagekomponente nur Bitmaps speichern kann? Oder hast du dafür ein TJPEGImage verwendet?

Gruß,
Jörg

_________________
Die Antworten auf die 5 häufigsten Fragen:
1. Copy(), Pos(), Length() --- 2. DoubleBuffered:=True; --- 3. Application.ProcessMessages bzw. TThread --- 4. ShellExecute() --- 5. Keine Vergleiche von Real-Typen mit "="!
.Chef
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1112



BeitragVerfasst: So 07.11.04 14:09 
Zweimal "nicht" im ersten Satz ... Oh GOTT!! ... Aber Edit geht ja nicht. :roll:

_________________
Die Antworten auf die 5 häufigsten Fragen:
1. Copy(), Pos(), Length() --- 2. DoubleBuffered:=True; --- 3. Application.ProcessMessages bzw. TThread --- 4. ShellExecute() --- 5. Keine Vergleiche von Real-Typen mit "="!
FatalError Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64

WIN ME
D6 Pers
BeitragVerfasst: So 07.11.04 14:56 
Danke für den source, jetzt klappts! Herrlich, so schnell richtige Antworten zu bekommen! Da sieht man auch über zweimal "nein" hinweg*ggg*

Grüße
Andy :wink:

p.s.: wenn du JPEG in uses einbindest, klappts mit den genauso wie mit bmps.