Gracias a los dos por contestar.
Primero he estado mirando los componentes de Indy, pero no acabo de aclararme y no he encontrado ningún ejemplo.
Luego he probado las funciones de seoane, que es justo lo que buscaba, pero tengo un problema al recuperar el TBitmap desde el stream.
He hecho una prueba rápida:
Código Delphi
[-]
Stream1 := TMemoryStream.Create;
Image1.Picture.Bitmap.SaveToStream(Stream1);
Texto:= BinToStr(Stream1.Memory,Stream1.Size);
Stream2 := TMemoryStream.Create;
StrToStream(Texto,Stream2);
Image2.Picture.Bitmap.LoadFromStream(Stream2);
Inicialmente las dos imágenes (TImage) tienen cargada una imagen del mismo tamaño y formato, pero son distintas, para ver si me copia el contenido de la imagen1 en la imagen2. Cuando lo pruebo la imagen2 se queda vacia, transparente.
El problema está en el Image2.Picture.Bitmap.LoadFromStream() porque he probado a cargar el stream1 y me pasa el mismo problema.
¿Hay que preparar el TBitmap o el TImage de alguna manera para que cargue bien desde el stream ?
Una vez cargada la imagen desde el strem he porbado a hacer un Image2.Rapaint, Image2.Update... pero sigue transparente.
Saludos