日期:2014-05-18  浏览次数:21244 次

界面贴png图片放大后失真一般怎么解决?
如题,一个窗口背景是一张png图片,当窗口在拉伸过程中图片会随着被放大或者缩小。
由于png图片不是矢量图形,在放大过程中会失真出现锯齿情况。

大家一般是怎么解决这个问题的呢?

请大家多多指点~~

------解决方案--------------------
这个问题无解,即使用最优秀的算法补色也没用办法,连Adobe都没用办法的事情

你可以准备几个不同大小的 同样的 图片,默认拉伸,当达到一定大小就换图
------解决方案--------------------
选择大的png图片以缩小方式显示,这样放大就不怎么失真了。
------解决方案--------------------
不是矢量图,放大是要失真,你看看能不能转换成矢量图?不过似乎不那么简单
------解决方案--------------------
出现锯齿,那就平滑处理,至少不会那么难看,但是由于放大带来的失真是无法弥补的
------解决方案--------------------
探讨

不是矢量图,放大是要失真,你看看能不能转换成矢量图?不过似乎不那么简单

------解决方案--------------------
探讨

不拉伸是行不通的~~

png图转换为矢量图透明效果会不会丢失呢?

------解决方案--------------------
探讨

感谢朋友的指点。我目前考虑到的是通过图形算法来解决,
比如双立方插值等等。
但图形图像处理没搞过,不知道工作量有多大~~

------解决方案--------------------
一般底图用材质Tile
然后再贴LOGO(泛指)
区分会拉伸和不拉伸的部分
另外一般材质会有些生成算法
差不多就是这个意思
------解决方案--------------------
coreldraw生成的文件格式能用作窗口背景吗?

如果仅仅是个背景,有必要花那么大精力折腾吗? 直接设置为平铺不就行了?
------解决方案--------------------
放太大后无解,有几个参数可以适当调调,但作用不大。

----------
工业控件 www.beaugauge.net
------解决方案--------------------
探讨

正在下载CoreDraw试一下把png图片转换为矢量图看看结果会怎样,

如果行不通再考虑图形算法。

那些经典的图形算法是不是都有专利?

------解决方案--------------------
建议只能做一个最大窗口不失真的图,这样只能缩放不会放大而失真
------解决方案--------------------
探讨

这个方法和微软的DeepZoom技术有点儿相似,可以去微软的技术站点看一下DeepZoom资料

我去了解一下MS 的DeepZoom

------解决方案--------------------
http://download.csdn.net/download/a350752425/1240022
可以考虑插值的方式来进行缩放
比直接缩放效果要好很多,但性能影响较大.