请教一个图象自适应Timage大小的问题?

vigrous_chen 2002-04-23 05:18:26
我用Timage来显示从SQL Server2000中取出的图片,图片的格式可能是bmp
也可能是jpe,当在Timage中显示的时候,有的很大,有的很小,很不美观,
我想限制Timage的大小,但图片大于Image时,自动调节图片到image的合适大小,
但是图片要显示完整,当图片小于image时,也要能合适的显示。(和在用Tpicturedialoge选择图片时,其右边显示的图片)请问如何实现,
可以给一些代码?谢谢
...全文
352 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
vigrous_chen 2002-04-24
  • 打赏
  • 举报
回复
谢谢以上各位的解答,
能否给一些代码,先谢了

1nbud 2002-04-24
  • 打赏
  • 举报
回复
显示之前先查看 图象的尺寸
如果尺寸小,就不用Stretch,而把 Center 设置为true 否则放大后很难看的,
因为这里不是矢量放大!如果尺寸大,也不能设置Stretch,这样容易造成纵横比例
失调,很难看的,只好先等比例缩放,在显示到Image上了!

等待更好的方案
mrzho 2002-04-24
  • 打赏
  • 举报
回复
你可以看看这个例子,
C:\Program Files\Borland\Delphi5\Help\Examples\Jpeg
这个例子里有对图像进行比例缩放的源码。
应该可以解决你的问题。
shangshang 2002-04-24
  • 打赏
  • 举报
回复
呵呵 ,我 以前做个 屏保,也有这一点。
就是 获取图片的 大小,然后按比例缩放就是了。
DellXu 2002-04-24
  • 打赏
  • 举报
回复
同意bluebilly!
bluebilly 2002-04-24
  • 打赏
  • 举报
回复
Stretch,如有失真的话就这样做,在做Stretch的前面获取原图的大小,再按照此比例进行缩放,然后进行Stretch
vigrous_chen 2002-04-23
  • 打赏
  • 举报
回复
up
继续等待回答
lovedata 2002-04-23
  • 打赏
  • 举报
回复
没错,Stretch属性会造成图片的失真,本人也深有体会。再好的办法我也没想到,还是试一试楼上的ghyghost(我要求delphi能理解我的心情)仁兄说的方法吧!
thisisxutao 2002-04-23
  • 打赏
  • 举报
回复
我曾经也遇到过类似的情况,最后用ACD打开的
mingyeh 2002-04-23
  • 打赏
  • 举报
回复
imgSuit.Stretch := True;
mingyeh 2002-04-23
  • 打赏
  • 举报
回复
imgSuit.Stretch := True;
  • 打赏
  • 举报
回复
Stretch属性可以做到,但图像有失真,我以前做过一个类似acdsee的软件,
我所用的方法是等比缩放,算法是自己编写的,它的原理有点像初中相似三角形一样。如果自己不愿意写,查查第三方控件。
dreamfan 2002-04-23
  • 打赏
  • 举报
回复
Stretch属性可以

5,930

社区成员

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

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