我想从网络加载 png 图像,但使用下面的代码,并非所有图像都能正确进入流中(在网络浏览器中发布 url 时,例如边缘,确实会正确给出图像)。例如,代码中的第一个url给出了加载位图失败的错误(流中的FSize只有14?),而第二个url则没有给出问题。有谁知道如何正确下载第一个网址?
为了使这段代码正常工作,将一个 TButton 和一个 TImage 放在窗体上。
在uses中添加了System.Net.HttpClientComponent。我使用的是德尔福10.3.3。调频。
谢谢,杰拉德
procedure TForm1.Button1Click(Sender: TObject);
var ms: TmemoryStream;
httpCli: TNetHTTPClient;
url: string;
begin
httpCli := TNetHTTPClient.Create(nil);
ms := TMemoryStream.Create();
url := 'https://a.tile.openstreetmap.org/11/1050/674.png';
// url := 'https://upload.wikimedia.org/wikipedia/commons/d/d5/Japan_small_icon.png';
httpCli.Get(url,ms);
ms.Position := 0;
Image1.Bitmap.LoadFromStream(ms);
ms.free;
httpCli.free;
end;
Run Code Online (Sandbox Code Playgroud) 在 Delphi VCL 中,打印表单很容易,因为表单有一个Print方法。FMX 中的表单似乎并非如此。有没有一种简单的方法可以在 Windows 上的 FMX 中打印表单?