Wie ein Bild-Dateiformat auswählen?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Wie ein Bild-Dateiformat auswählen?

Beitrag von Euklid »

Hallo Leute!

Möchte gerne in meinem Gravitations-Programm eine Speicherroutine einbauen, die das auf Image1.Canvas erstellte Bild speichert.

Bisher habe ich das so gelöst:

Code: Alles auswählen

Form1.Image1.Picture.SaveToFile('/home/pfad/datei.bmp');


Klappt wunderbar! Nun zu meiner Frage:

Soweit ich weiß unterstützt Lazarus und FreePascal auch andere Dateiformate als .bmp, z.B. .png .
Aber wie kann ich das Bild in Image1 unter einem anderen Format als .bmp speichern?

Wenn ich eingebe:

Code: Alles auswählen

Form1.Image1.Picture.SaveToFile('/home/pfad/datei.png');


Speichert er es trotzdem im .bmp-Format ab :(

Viele Grüße, Euklid

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

versuch es mal mit Image1.Picture.PNG.SaveToFile ich weiß jez nich wie sich das nennt aber das ".PNG" gibt es aufjeden fall ^^

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Danke für die schnelle Antwort!

Nun: Image1.Picture.PNG.SaveToFile gibt es tatsächlich.

Habe es eben ausprobiert. Nur leider besteht das dann erstellt Bild nur aus einem Pixel...?!?

Vielleicht haben die das in Lazarus ja noch nicht fertig programmiert... ...zur Not reicht es ja auch, wenn er .bmp-Dateien erstellt, nur sind die immer so rießig (1,4MB).

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

Hm du musst noch unter .PNG die Width und Height einstellen damit es geht , aber ich habe es selbst noch nciht ganz hinbekommen da bei mir dann nur ein schwarzer fleck angezeigt wird -.-*

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Ja? bei mir ist der Fleck blau :D

Werde mal weiter rumexperimentieren...

EDIT: Juhu, es klappt!

Habe die width auf die width vom Image1 und die height auf die height vom Image1 gesetzt.

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

hm war klar bei mir geht wie immer nichts -.-*

Muss man für Lazarus irgendwas Opfern damit es 100% funktioniert? =D

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Komisch. Benutzt du auch Version 9.20?

Ja, es gibt so ein paar Haken und Ösen, wo der FPC wirklich anders interpretiert, als Borlands Delphi.

Beispielsweise: s:='test';
Mit Delphi ist s[3]='s', s[4]='t', s[5]='', s[6]=''
Mit FPC ist s[3]='s', s[4]='t', s[5]='t', s[6]='t'
(vgl. Werte für 5,6,...)
Dieser Unterschied hatte mir bei meinen Umstieg Kopfzerbrechen bereitet, da ich das Ende eines Strings eben durch - if s[n]='' - prüfte und das Lazarus-Programm sich an dieser Stelle immer aufhängte :lol:

Aber wenn man die kennt, lässt es sich wirklich gut mit FPC und Lazarus programmieren, finde ich. Die Bugs werden von beta zu beta immer weniger...

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

EugenE hat geschrieben:hm war klar bei mir geht wie immer nichts -.-*

Muss man für Lazarus irgendwas Opfern damit es 100% funktioniert? =D


Also ne Jungfrau hat noch nie geschadet. Zur Not tut's vielleicht auch ein Lamm. ;-)

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

hehe ^^

danny61
Beiträge: 94
Registriert: So 5. Nov 2006, 18:40
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Berlin

Beitrag von danny61 »

Also ich lasse immer einen Borland-Mitarbeiter ausbluten, dann rennt der Lazarus wieder wie geschmiert :lol:

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

:D *lachkrampf*

Antworten