
152
|
第
12
章
12.1.3
让想法真正工作
显然,为了让用户感受到相同的视觉品质,不同类型的图像需要有不同的输出设定。一
张森林的照片由于有很多边缘和不同的颜色,因此需要更多的二进制位以充分地展示它;
而一张手绘的卡通,因为其颜色简单,所以不会产生很多的渐变问题。因此,不同的图
像类型,需要使用不同的输出设定。然而,如何在开发环境中实现它,这个问题留给你
来解决。
显而易见,通过云端的计算资源反复寻找找出理想的质量设定是最简单的方法,但并不是
所有的开发人员都有时间和经费做到这一点。
12.2
图像的尺寸很重要
在现今的移动世界,有很多屏幕尺寸不同、处理能力各异的设备。这对开发人员来说是一
个很大问题:在处理图像时应该使用什么样的分辨率?
考虑这样一个场景,一位用户正在用手机上传一张
800
万像素的照片。
5
对那些屏幕分辨率与上传用户相同的用户来说,有理由相信他们希望看到的是同样大小的
照片,可是应该如何应对那些屏幕分辨率只有一半或者四分之一的用户呢?这与从桌面显
示器上和手机屏幕上看图像时的差别类似。显然,更小的屏幕会使用更小的物理像素显示
图像,因为它拥有的物理像素就少,那么应该在什么地方调整大小呢?
将全分辨率的图像发送到设备上,在渲染前再调整大小,对开发人员来说,这样做肯定最
省事,但缺点也很明显,我们将用户不需要(也不会看)的数据发给了他们。这样做,其
实是把钱往水里扔,还听不到一个响。
更好的方法是直接在云端调整图像的大小,或者在某处缓存调整大小后的图像,这样就能
向小屏幕发送小尺寸的图像。这并非遥不可及。很有可能 ...