Ver Mensaje Individual
  #1  
Antiguo 27-02-2024
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Reputación: 18
Galahad Va por buen camino
Conversión / formato MIME a pdf

Hola, un saludo a tod@s.
Estoy utilizando un servicio web para acceder a unas etiquetas de una agencia de transporte.
Se Descarga un xml con un código binario base64 que si lo 'decodifico' en paginas web que hay para esto me presenta un pdf sin problemas.
Necesito a partir de ese código binario crear un pdf .
No lo consigo, me genera un fichero que no es legible .
El código de dicha función es:
Código Delphi [-]
Procedure DescargarEtiquetas( crutafichero:string );
var FStream : TFileStream;
    bytes: Tbytes;
begin

    bytes   := TNetEncoding.Base64.Decode( TEtiquetaEnvioRespuesta.GetEtiquetaEnvioResult.EtiquetaFile);
    if bytes <> nil then
    begin
       FStream := TfileStream.Create( crutafichero, fmcreate );
       try
          Fstream.write( bytes,length(bytes) );
       finally
          Fstream.free;
       end;
    end;
end;

Este dato 'TEtiquetaEnvioRespuesta.GetEtiquetaEnvioResult.EtiquetaFile' es de tipo TByteSoapArray
Entiendo que no estoy decodificando correctamente esos datos binarios..
en la agencia me comentan:

El método GetEtiquetaEnvio te ha devuelto la etiqueta PDF… lo que ves es código binario base64, que se debe convertir para para ver el contenido PDF – fichero o en este caso la etiqueta.
Con el ContentType o formato MIME (application/pdf) lo logras casi de forma directa..


¿ alguna idea ?
Gracias

Última edición por Casimiro Notevi fecha: 28-02-2024 a las 11:05:51.
Responder Con Cita