大家帮看看代码,哪不对

wenjiu5 2004-10-13 05:30:51
procedure TfrmMain.Button1Click(Sender: TObject);
var
httpClient: TIdHttp;
imageStream: TMemoryStream;
imageStream1: TFileStream;
strURL: String;
Bitmap: TBitmap;
begin
httpClient := TIdHttp.Create(nil);
imageStream := TMemoryStream.Create;
Bitmap := TBitmap.Create;
try
strURL := 'http://127.0.0.1:8080/EditText.jsp?text=' + 'a'+'&width='
+IntToStr(100)+'&height='+IntToStr(20);
httpClient.Get(strURL, imageStream);
imageStream.SaveToFile('c:\abc.bmp');
imageStream.Position := 0;
Bitmap.LoadFromStream(imageStream);
Canvas.Draw(0,100, Bitmap);
finally
imageStream.Free;
Bitmap.Free;
httpClient.Free;
end;
end;

显示出来的图片残缺不全,但保存到硬盘上的文件却是正确的
谁知道是怎么回事
...全文
78 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
longtusoft 2004-10-13
  • 打赏
  • 举报
回复
看看老地主的做法吧.
readersm68 2004-10-13
  • 打赏
  • 举报
回复
不过这样做出来,被其他窗体覆盖了以后,不会重绘。
readersm68 2004-10-13
  • 打赏
  • 举报
回复
直接用:
Bitmap.LoadFromStream('c:\abc.bmp');
Canvas.Draw(0,100, Bitmap);
试试
数字蛋糕 2004-10-13
  • 打赏
  • 举报
回复
可能是因为你只画了一次,而Canvas上的东西是不会自动保存到下次重绘的.
把这张图画到TImage上试试?
readersm68 2004-10-13
  • 打赏
  • 举报
回复
Canvas.Draw(0,600, Bitmap);那个是点的位置(x,y,),不是大小。

hjf1223 2004-10-13
  • 打赏
  • 举报
回复
没有做过,帮你顶上去
hsmserver 2004-10-13
  • 打赏
  • 举报
回复
Canvas.Draw(0,600, Bitmap);
改大点试试
zwb666 2004-10-13
  • 打赏
  • 举报
回复
帮你顶
qdmis 2004-10-13
  • 打赏
  • 举报
回复
帮你顶

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧