AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Screenshot über Sockets als JPEG versenden
Thema durchsuchen
Ansicht
Themen-Optionen

Screenshot über Sockets als JPEG versenden

Ein Thema von Neuni · begonnen am 29. Okt 2004 · letzter Beitrag vom 1. Nov 2004
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Screenshot über Sockets als JPEG versenden

  Alt 30. Okt 2004, 02:58
Zitat von Neuni:
Zitat von MasterC:
GraphicEx musst du einfach nur einbiden und schon kannst du die Formate lesen. Ein TImage direkt in einen Stream speichern geht glaube ich nicht, du könntest es ja erst in eine Datei speichern und dann schicken.
Das mit der Datei wollte ich gerade verhindern, da es dadurch länger dauert. Wenn ich die dateien im RAM behalte geht es schneller (Es werden ja alle paar sekunden bilder übertragen)
Aber es müsste mit
TImage.Picture.Graphic.SaveToStream gehen.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#12

Re: Screenshot über Sockets als JPEG versenden

  Alt 30. Okt 2004, 21:23
Mein Problem ist erstmal nur:

Wie bekomm ich das JPEG Bild in den stream und da auch erfolgreich wieder raus, sodas ich das dann auf dem Imahe auf dem anderen Computer sehe?
  Mit Zitat antworten Zitat
Beckman

Registriert seit: 12. Jul 2004
205 Beiträge
 
#13

Re: Screenshot über Sockets als JPEG versenden

  Alt 30. Okt 2004, 21:55
hi neuni!

schau dir mal das projekt im anhang an.

und ins jpg konvertierst du bitmaps so:

uses jpeg;
Delphi-Quellcode:
procedure TForm1.Saveasjpg1Click(Sender: TObject);
var
   jpg: TJpegImage;
begin
//init
jpg := nil;

if savedialog1.Execute then begin
  try
    jpg := TJpegImage.Create;
    jpg.Assign(image1.Picture.Bitmap);
    //Hier können JPG-Eigenschaften wie Kompression, Größe usw. gesetzt werden
    
    jpg.SaveToFile(SaveDialog1.filename);
    finally
      jpg.Free;
      end;
  end;
end;
Angehängte Dateien
Dateityp: rar bmp__ber_lan_oder_wan_576.rar (10,1 KB, 50x aufgerufen)
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#14

Re: Screenshot über Sockets als JPEG versenden

  Alt 30. Okt 2004, 22:50
Danke, das is gut...aber ich wollte das ganze mit den sockets programmieren (Frag bitte nicht warum )

Also die ausgabe vom "JPEG-Umwandler" könnte ich ja per
jpg.SaveToStream(stream); in nen Stream packen, oder?

So, nun kann ich ja diesen Stream verschicken.
clientsocket1.Socket.SendStream(stream) müsste gehen oder?

PS: Müsste der stream dann nen TStream sein, oder nen TFileStream?
  Mit Zitat antworten Zitat
Beckman

Registriert seit: 12. Jul 2004
205 Beiträge
 
#15

Re: Screenshot über Sockets als JPEG versenden

  Alt 30. Okt 2004, 23:21
das muesste doch aehnlich funken wie bei den indy sockets

und stream ist da das richtige.
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#16

Re: Screenshot über Sockets als JPEG versenden

  Alt 31. Okt 2004, 13:28
Jetzt hab ich dat einfach so gemacht, aber dann kommt nen "ABstrakter Fehler":

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   jpg: TJpegImage;

begin

//init
jpg := nil;


  try
    jpg := TJpegImage.Create;
    jpg.Assign(image1.Picture.Bitmap);
    //Hier können JPG-Eigenschaften wie Kompression, Größe usw. gesetzt werden

    jpg.SaveToStream(stream);
    finally
      jpg.Free;
      end;
  end;
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#17

Re: Screenshot über Sockets als JPEG versenden

  Alt 1. Nov 2004, 10:45
Keiner ne idee?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#18

Re: Screenshot über Sockets als JPEG versenden

  Alt 1. Nov 2004, 11:34
Hi Neuni,

wenn ich mich nicht irre dann musst du den Stream auch erzeugen. Außerdem würde es uns helfen zu wissen WO der abstrakte Fehler auftritt (beim Start, beim jpg.Assign, ...)

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#19

Re: Screenshot über Sockets als JPEG versenden

  Alt 1. Nov 2004, 11:37
Hallo,

abstrakter Fehler heißt du nimmst eine Methode eines Objektes für die keine Implementierung existiert. Ich vermute einfach mal dein "stream" ist ein TSream - das geht natürlich nicht da die ganze Klasse Abstract ist. Nimm doch einfach z.B. TMemoryStream oder wie das Ding hies!
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat
Neuni

Registriert seit: 25. Feb 2004
815 Beiträge
 
Delphi 7 Personal
 
#20

Re: Screenshot über Sockets als JPEG versenden

  Alt 1. Nov 2004, 12:16
Also erstellt hab ich den stream ja jetzt eigendlich mit Tmemorystream.create, und dat speichern in den stream geht nun auch, ohne dass er was sagt, aber wie bekomm ich das bild nun wieder aus dem stream raus?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
stream := Tmemorystream.Create;

end;

procedure TForm1.Button2Click(Sender: TObject);
var
   jpg: TJpegImage;

begin

//init
jpg := nil;


  try
    jpg := TJpegImage.Create;
    jpg.Assign(image1.Picture.Bitmap);
    //Hier können JPG-Eigenschaften wie Kompression, Größe usw. gesetzt werden

    jpg.SaveToStream(stream);
    finally
      jpg.Free;
      end;
  end;
Wenn ich stream.SaveToFile('C:\lolka.jpg'); nehme, dann kann ich dat bild speichern, das geht auch, aber wie bekomm ichs ins image ohne zwischenspeichern?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 14:25 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