AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Image.Picture als JPEG Speichern????

Ein Thema von SimStar001 · begonnen am 20. Mär 2008 · letzter Beitrag vom 23. Aug 2008
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#21

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 18:16
Hast Du denn wenigstens mal einen Breakpoint gesetzt und durchgesteppt, um die betroffene Zeile auszumachen? Dass das am vorherigen Speichern liegen soll, kann ich irgendwie nicht glauben.

[edit] Schlechtschreibung [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#22

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 18:18
also den code hier habe ich wie gesagt jetzt, da der funktioniert!

ich hatte zuvor auch alles so gemacht wie gesagt aber dann kam halt der fehler. die festplatte ist frei, da habsch genug speicher!

das bild speichere ich hier erst, weil ich es dann komischerweise laden und umwandeln kann und dann keine fehlermeldung kommt, gehe ich den direkten weg und mache es so, kommt immer die speichermeldung, was ich net versteh:

Delphi-Quellcode:
              Bild := TJPEGIMAGE.create;
              Bild.Assign(Rechnung.Picture.Bitmap);
bild.CompressionQuality := 75;
Bild.compress;
              Bild.savetofile(extractfilepath(paramstr(0)) + '\Daten\Rechnungen\Seite' + inttostr(Aktuelle_Seite) + '.jpeg');
              bild.Free;

geht net in meinen kopf rein!
Marco Tröger
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#23

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 18:19
ja habsch, es kommt immer in der ZEILE


Bild.compress; oder halt wenn ich dass Compressieren weglasse bei:

savetofile(....);
Marco Tröger
  Mit Zitat antworten Zitat
Benutzerbild von dajuhsa
dajuhsa

Registriert seit: 20. Apr 2007
397 Beiträge
 
Turbo Delphi für Win32
 
#24

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 18:36
ist in rechnung.picture.bitmap denn überhaupt ein bild geladen, also assigned?
schreib mal vor deinen speichern-aufruf
Delphi-Quellcode:
if not Assigned(rechnung.picture.bitmap) then
begin
showmessage('MIEEEP!Bild nicht Assigned!');
exit
end;
das Essen ist wie das Internet - Downstream ist immer angenehmer als Upstream
-
Warum missbraucht die ganze Programmierwelt Images als Paintboxen
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#25

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 18:49
Hast du es mal testweise mit einem kleineren Bitmap versucht? Vielleicht reicht dein Speicher ja wirklich nicht aus.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#26

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 19:52
Aber dass mehr Speicher zur Verfügung stehen soll, wenn man die Bitmap vorher auf der HD ablegt, erscheint mir etwas abstrus.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#27

Re: Image.Picture als JPEG Speichern????

  Alt 22. Mär 2008, 21:01
Naja, wenn er es als Bitmap speichert landet die direkt auf der Platte, während das JPEG erstmal in den Arbeitsspeicher kommt und das Bitmap komprimiert. Ich weiß nicht, wie viel speicher das ganze benötigt, aber mal mindestens das Doppelte denke ich schon, weil die Daten ja zweimal im Speicher stehen müssen. Wenn das Bitmap c.a. 150mb groß ist, wären das 300mb, also schon recht viel für ein einzelnes Programm.

[edit]ich sollte genauer lesen... sry[/edit]
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#28

Re: Image.Picture als JPEG Speichern????

  Alt 22. Aug 2008, 23:30
Kann mir bitte auch mal jemand helfen. Ich wollte kein neues Thema aufmachen, weil es hier gut her passt und bestimmt jemand eine Antwort parat hat. Ich habe folgendes geschrieben. In Image1 ist ein Bild drin (sichtbar). Aber meine jpg-Datei ist immer leer (0 Bytes).

Was ist bei mir falsch?

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
Var
   Jpg :TJPEGImage;
begin
   If Not Assigned(Image1.Picture.Graphic) Then
      MessageDlg('Kein Bild im Speicher',mtWarning,[mbOK],0)
   Else
   Begin
      SaveDialog1.Execute;
      If SaveDialog1.FileName='Then
         MessageDlg('Keine Datei ausgewählt',mtWarning,[mbOK],0)
      Else
      Begin
         If ExtractFileExt(SaveDialog1.FileName)<>'.jpgthen
            SaveDialog1.FileName:=SaveDialog1.FileName+'.jpg';
         Jpg:=TJPEGImage.Create;
         Jpg.Assign(Image1.Picture.Graphic);         // Bild zuweisen
         Jpg.CompressionQuality:=   12;            // 1 mies, 100 am besten
         Jpg.ProgressiveEncoding:=   true;            // Schrittweise Aufbau beim Laden
         Jpg.PixelFormat:=            jf8Bit;         // jf24Bit oder jf8Bit
         Jpg.Compress;                              // Bild komprimieren
         Jpg.SaveToFile(SaveDialog1.FileName);      // Abspeichern
         Jpg.Free;
      End;
   End;
end;
Gruß, Alex
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#29

Re: Image.Picture als JPEG Speichern????

  Alt 23. Aug 2008, 10:01
Versuch es mal so (Reihenfolge geändert):
Delphi-Quellcode:
procedure TForm36.Button3Click(Sender: TObject);
Var
   Jpg :TJPEGImage;
begin
   If (Not Assigned(Image1.Picture.Graphic)) or Image1.Picture.Graphic.Empty Then
      MessageDlg('Kein Bild im Speicher',mtWarning,[mbOK],0)
   Else
     if SaveDialog1.Execute then
     Begin
       Jpg:=TJPEGImage.Create;
       try
         Jpg.CompressionQuality:= 12;
         Jpg.ProgressiveEncoding:= true;
         Jpg.PixelFormat:= jf8Bit;
         Jpg.Assign(Image1.Picture.Graphic);
         Jpg.Compress;
         Jpg.SaveToFile(ChangeFileExt(SaveDialog1.FileName,'.jpg'));
       finally
         Jpg.Free;
       end;
     End;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#30

Re: Image.Picture als JPEG Speichern????

  Alt 23. Aug 2008, 10:08
Hi,

Was ist es denn für ein Bils? Afair klappt TJpegFile.Assign nut, wenn ein TBitmap ge-assigned wird. Erzeuge dir euinn neues Birmap, male dort das Bild drauf (TBitmap.Canvas.Draw) und weise das zu, wenn du kein TBitmap hast.

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 17:28 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