Ich habe einen
TIdHttpServer
. Bislang liefert der eine von Hand zusammengebastelte
HTML-Startseite und ansonsten JSON-Objekte als Strings aus. Das macht er hervorragend.
Ich möchte die Startseite jetzt mit ein paar Bildern aufpeppen.
Eine PNG-Datei von der Festplatte per http auszuliefern war super einfach:
Delphi-Quellcode:
uses IdCustomHttpServer, System.IoUtils;
procedure generateReply(
const request: TIdHTTPRequestInfo;
const response: TIdHTTPResponseInfo
);
const
filePath = 'C:\Users\(...)\title.png';
begin
response.ContentStream := TFile.OpenRead(filePath);
try
response.ContentType := 'image/png';
response.FreeContentStream := True;
except
response.ContentStream.Free();
response.ContentStream := nil;
raise;
end;
end;
Nur habe ich letztendlich ein
TPicture
mit einer hübschen Vektorgrafik. Wie liefere ich das aus? Das eigentliche Format ist wahrscheinlich eine Delphi-Eigenerfindung oder irgendein 30 Jahre altes Windows-Format, also nichts was ein Browser direkt anzeigen kann. Was kann ich hier tun? Muss ich es vorher in eine Pixelgrafik umwandeln?