Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Load Image From TBitmap (or Stream) (https://www.delphipraxis.net/83243-load-image-tbitmap-stream.html)

mr_fahrrad 29. Dez 2006 18:41


Load Image From TBitmap (or Stream)
 
how I make to load image from Stream (or Bitmap) ?

with the code:

Delphi-Quellcode:
var
  li: Word;
begin
  // Loop through all images of a TWebbrowser
  // Schleife über alle Bilder im Webbrowser
  for li := 0 to WebBrowser1.OleObject.Document.Images.Length - 1 do
    WebBrowser1.OleObject.Document.Images.Item(li).Src :='c:\file.bmp';
end;
I change all images in TWebBrowser, but from a file in my hard Disk (or URL)

How i make to change the src from image loading the picture fom a Bitmap or a Stream?

Thanks for the help and sorry for the post in english... You can answer me in Deutsch if you want

little_budda 29. Dez 2006 19:28

Re: Load Image From TBitmap (or Stream)
 
Hallo,

ich lade Bilder vom Server mit folgendem Code

Delphi-Quellcode:
  // Stream erzeugen und auf URL verweisen
  ImageStream:=TFileStream.Create('URL', fmCreate or fmShareDenyWrite);
  try
    // File laden und lokal ablegen
    IdHTTP1.Get('LOKALER DATEINAME', ImageStream);
  finally
    // Steam freigeben
    ImageStream.Free;
  end;
Gruß Holger.

DGL-luke 29. Dez 2006 19:31

Re: Load Image From TBitmap (or Stream)
 
I'm afraid the Webbrowser won't take a picture from a stream (there are obscure methods, like placing the image content in the dcument BASE64-encoded... i don't know about them).

You could save the image to a temporary file and tell the WebBrowser to load it from there.

@Holger: Das ist nicht das was er sucht ;-)

Phoenix 29. Dez 2006 19:32

Re: Load Image From TBitmap (or Stream)
 
Sorry, but I don't think this is possible at all.

The TWebBrowser component encapsules the normal Internet Explorer, which is in fact loaded as a seperate process and displayed in your application.

You do have access to the DOM in the internet explorer process which can pointing to URI's of pictures, but you don't have access to the rendering engine, and this is, where the pictures are loaded and displayed in fact.

So I fear you can't change the location where the picture is loaded from from an URL to a pointer inside the application memory (where a stream or a TBitmap would be located at).

I think as a workaround you could write the picture from application memory to a file in the windows temporary directory and point the url to that temporary file.

DP-Maintenance 29. Dez 2006 19:34

DP-Maintenance
 
Dieses Thema wurde von "Phoenix" von "Internet / LAN / ASP.NET" nach "VCL / WinForms / Controls" verschoben.
Es geht eher um das TWebbrowser Control und lokale Files als um Kommunikation via Internet


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:47 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